av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

MyBatis Log 插件無(wú)法顯示SQL語(yǔ)句的原因解析

瀏覽:14日期:2023-10-22 15:26:12

Mybatis有什么用

前兩天跟阿里的大牛聊天,他講到對(duì)于性能要求高,需求變化多的互聯(lián)網(wǎng)項(xiàng)目來(lái)說(shuō),用在sql優(yōu)化上的開(kāi)發(fā)時(shí)間是大頭,有時(shí)候代碼寫(xiě)出來(lái)一小時(shí),優(yōu)化反反復(fù)復(fù)可能要幾個(gè)星期,這時(shí)候Mybatis這種配置比較靈活的框架優(yōu)勢(shì)就顯現(xiàn)了!Mybatis為什么在國(guó)內(nèi)這么流行?

1. 什么是Mybatis?

MyBatis是支持定制化sql、存儲(chǔ)過(guò)程以及高級(jí)映射的優(yōu)秀的持久層框架。MyBatis避免了幾乎所有的JDBC代碼和手工設(shè)置參數(shù)以及抽取結(jié)果集。MyBatis使用簡(jiǎn)單的XML或注解來(lái)配置和映射基本體,將接口和Java映射成數(shù)據(jù)庫(kù)中的記錄。

2. Mybatis為什么有優(yōu)勢(shì)?

l 簡(jiǎn)單易學(xué):本身就很小且簡(jiǎn)單。沒(méi)有任何第三方依賴,最簡(jiǎn)單安裝只要兩個(gè)jar文件+配置幾個(gè)sql映射文件易于學(xué)習(xí),易于使用,與JDBC相比,減少了50%以上的代碼量。

l 靈活:Mybatis 不會(huì)對(duì)應(yīng)用程序或者數(shù)據(jù)庫(kù)的現(xiàn)有設(shè)計(jì)強(qiáng)加任何影響,SQL寫(xiě)在XML里,從程序代碼中徹底分離,降低耦合度,便于統(tǒng)一管理和優(yōu)化,可重用。

l 解除sql與程序代碼的耦合:通過(guò)提供DAO層,將業(yè)務(wù)邏輯和數(shù)據(jù)訪問(wèn)邏輯分離,使系統(tǒng)的設(shè)計(jì)更清晰,更易維護(hù),更易單元測(cè)試。sql和代碼的分離,提高了可維護(hù)性。

l 提供映射標(biāo)簽,支持對(duì)象與數(shù)據(jù)庫(kù)的ORM字段關(guān)系映射

l 提供對(duì)象關(guān)系映射標(biāo)簽,支持對(duì)象關(guān)系組建維護(hù)

l 提供XML標(biāo)簽,支持編寫(xiě)動(dòng)態(tài)sql。

3. Mybatis為什么在國(guó)內(nèi)這么流行?

1、歷史悠久

MyBatis 本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目改名為MyBatis 。

2、阿里推動(dòng)

其實(shí)十年前我們主要使用的ORM框架就是iBatis,而阿里巴巴是對(duì)國(guó)內(nèi)Java開(kāi)發(fā)者影響最大的一家公司。阿里在國(guó)內(nèi)Java社區(qū)的影響力有目共睹,阿里對(duì)Java社區(qū)貢獻(xiàn)了很多實(shí)用的開(kāi)源工具,并且國(guó)內(nèi)Java開(kāi)發(fā)者對(duì)于阿里開(kāi)源的產(chǎn)品接納程度也最高。

早期阿里系離職工程師的影響力也不可小覷,這些從阿里離職的工程師進(jìn)入了各個(gè)規(guī)模的公司, 通常也有擔(dān)任較高的職位, 擁有著相對(duì)較多的話語(yǔ)權(quán), 在新公司繼續(xù)使用自己熟悉的iBatis就是再正常不過(guò)的了。

3、互聯(lián)網(wǎng)大環(huán)境下的選擇

MyBatis封裝較少,提供的切入點(diǎn)較多,適合進(jìn)行架構(gòu)。遇到超級(jí)復(fù)雜的場(chǎng)景的時(shí)候有不錯(cuò)的sql支持。簡(jiǎn)單高效,優(yōu)化起來(lái)也方便,比較符合現(xiàn)在的開(kāi)發(fā)節(jié)奏,互聯(lián)網(wǎng)公司都是先快速開(kāi)發(fā)占領(lǐng)市場(chǎng),然后再優(yōu)化代碼。而且這個(gè)過(guò)程需求經(jīng)常是變來(lái)變?nèi)サ模_(kāi)發(fā)人員也有流動(dòng)性,為了便于管理,所以大家都選擇了Mybatis。

好了,開(kāi)始咱今天的正文

MyBatis Log是IDEA一款下載量非常高的插件,該插件可以對(duì)控制臺(tái)打印的日志進(jìn)行解析,然后將對(duì)應(yīng)的SQL語(yǔ)句整理并拼接好對(duì)應(yīng)的參數(shù),非常方便。有時(shí)插件卻無(wú)法打印SQL,總的來(lái)說(shuō),有如下三種原因:

mybatis安裝地址

https://plugins.jetbrains.com/plugin/10065-mybatis-log-plugin/versions

1. 項(xiàng)目的日志等級(jí)過(guò)高,修改日志等級(jí)為 DEBUG 或 INFO

## log4j.properties 文件log4j.rootLogger = DEBUG,stdout,D 或者 ## application-dev.yml 文件loggig: level: root: DEBUG

2. mybatis配置中沒(méi)有設(shè)置將sql日志輸出到控制臺(tái)

## mybatis-config.xml 文件<configuration> <settings> <setting name='logImpl' value='org.apache.ibatis.logging.stdout.StdOutImpl' /> </settings></configuration> 或者 ## application-dev.yml 文件mybatis-plus: configuration: ## 日志 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

3. 控制臺(tái)打印的日志格式不符合規(guī)范,插件無(wú)法解析

修改日志打印的格式即可,推薦格式如下:## log4j.properties 文件###控制臺(tái)日志輸出###log4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern = [%p] - [%t] - [%d{yyyy-MM-dd HH:mm:ss:SSS}] - (%c{1}:%L) - %m%n 或者 ## application.yml 文件# 日志設(shè)置配置logging: pattern: console: ’%X{RequestNo}-%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}[%L] - %msg%n’

總結(jié)

到此這篇關(guān)于MyBatis Log 插件無(wú)法顯示SQL語(yǔ)句的原因的文章就介紹到這了,更多相關(guān)MyBatis Log 插件無(wú)法顯示SQL語(yǔ)句內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

相關(guān)文章:
主站蜘蛛池模板: 亚洲午夜在线观看 | 日韩视频免费大全中文字幕 | 久久久久久成人 | 欧美日韩小视频 | 久久精品二区 | 在线观看视频一区二区三区 | 成人国产在线 | 福利视频在线 | 欧美视频一二三区 | 午夜视频免费在线观看 | 欧美激情视频一区二区三区 | 欧洲色综合 | 午夜在线视频观看 | 国产精品视频免费在线观看 | 天天看片天天爽 | 精品视频国产 | 欧美日韩综合网 | 中文字幕精品在线观看 | 日韩精品极品 | 91欧美激情一区二区三区成人 | 天天干狠狠操 | 午夜影院在线 | 成人福利在线观看 | 欧美色图一区二区三区 | www.青青草 | 久久综合久 | av片免费观看 | 国产欧美久久久 | 黄色大片av | 五月婷婷综合激情 | 亚洲综合免费 | 国产免费小视频 | www.久久精品 | 美女在线播放 | 亚洲黄色精品 | 在线免费观看黄色片 | 欧美福利在线 | 国产区视频在线观看 | 一级理论片 | 看片黄全部免费 | 中文字幕在线观看网站 |