本篇內(nèi)容主要講解“springmvc實現(xiàn)輸入輸出信息打印日志中”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“springmvc實現(xiàn)輸入輸出信息打印日志中”吧!
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比和平網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式和平網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋和平地區(qū)。費用合理售后完善,十余年實體公司更值得信賴。
同事在所有controller方法里加入了輸入?yún)?shù)的log輸出,輸出數(shù)據(jù)的log輸出或者使用aop的方式。真的很煩,鳥菜啊給大家一個簡單的方式。
@Slf4j @RestController public class UserController{ @RequestMapping("getUserInfo") public UserInfo getUserInfo(Long userId ){ log.info("------------->查詢getUserInfo入?yún)}", id); xxxxxxxx log.info("------------->查詢getUserInfo輸出{}", xxx); } @RequestMapping("newGetUserInfo") public UserInfo getUserInfo(Long userId , Long appId){ log.info("------------->查詢getUserInfo入?yún)d: {} , appId:{}", id, appId); xxxxxxxx log.info("------------->查詢getUserInfo輸出{}", xxxx); } }
每個類都需要加入@Slf4j注解,問題不大。如果不需要打印,那么可以不要,要還有一個報警,真煩
每個方法聲明下與return之前都要寫輸入輸出的代碼,這個工作量也不小
多個入?yún)ⅲ蛴》浅B闊?,添加一個入?yún)⒌臅r候需要修改,工作量大,容易出錯
輸入輸出的字符串里面必須加入方法名,這個工作量也不小。在你復(fù)制方法的時候也需要修改,挺煩。添加方法名時容易出錯,修改時忘記修改。容易出錯
日志級別不容易控制,必須是info級別,否則會打印很多其他debug的日志,因為是info級別,當(dāng)想關(guān)閉輸入輸出的時候,缺因為是還有大量關(guān)鍵信息是通過info級別打印到日志里面,所以不能關(guān)閉。
如果是使用debug級別打印輸出輸出,當(dāng)controller的目錄不一樣時,需要在日志文件的配置中,controller的日志級別為debug。容易忘記配置,出事,線上一般是關(guān)閉的。
工作量大,代碼不優(yōu)雅(難看死了),日志信息與配置容易出錯,配置不好管理
百度一下隨便找一個spring aop實現(xiàn)日志輸出的,麻煩大家點擊下Spring AOP實現(xiàn)統(tǒng)一日志輸出。是在不想萬惡的重復(fù)造輪子
需要基于Spring AOP實現(xiàn)統(tǒng)一日志輸出,而且非常健壯,沒有問題。而且非常健壯,沒有問題。而且非常健壯,沒有問題。
需要啟動Spring AOP實現(xiàn)統(tǒng)一日志輸出
需要配置aop的切面,如果controller目錄不一樣,需求添加與修改切面點,容易出錯
不基于jar依賴的話,需要把Spring AOP實現(xiàn)統(tǒng)一日志輸出的代碼每個項目復(fù)制一份,超級麻煩,容易出錯。
當(dāng)你的Spring AOP實現(xiàn)統(tǒng)一日志輸出,修改得時候,需要把所有項目jar的依賴修改,如果是復(fù)制代碼的方式,那更加麻煩
如果是jar依賴,需要多一個依賴,作為管理潔癖者十分不好。如果是通過代碼的方式,可能不需要修改了代碼出問題,項目目錄里面會出現(xiàn)一個aop目錄,鳥菜啊會煩死去,業(yè)務(wù)代碼里面。只有那些業(yè)務(wù)目錄,不應(yīng)該出現(xiàn)功能目錄。而且盡量保證目錄的簡單
管理非常麻煩,容易出錯,需要一定功底的程序員維護,成本大,代價大。
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-access</artifactId> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> </dependency>
<logger name="org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod" level="trace" />
2019-10-21 12:02:18.640 [http-nio-12140-exec-2] TRACEo.s.w.s.m.m.a.ServletInvocableHandlerMethod - Invoking 'com.xxx.UserController.getUserInfo' with arguments [1] 2019-10-21 12:02:18.920 [http-nio-12140-exec-2] TRACEo.s.w.s.m.m.a.ServletInvocableHandlerMethod - Method [com.xxx.UserController.getUserInfo] returned [xxxx]
打印的數(shù)據(jù)有點長
沒有辦法把多個log輸出合成一個
要么一起關(guān)閉,一起打開,沒有辦法靈活下
優(yōu)雅
簡單
無侵入
到此,相信大家對“springmvc實現(xiàn)輸入輸出信息打印日志中”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
本文名稱:springmvc實現(xiàn)輸入輸出信息打印日志中
新聞來源:http://muchs.cn/article34/pjjipe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、網(wǎng)站制作、微信小程序、企業(yè)網(wǎng)站制作、建站公司、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)