欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MyBatis Log 插件無法顯示SQL語句的原因解析

 更新時間:2020年09月23日 10:09:35   作者:大話家486  
MyBatis Log是IDEA一款下載量非常高的插件,該插件可以對控制臺打印的日志進行解析,然后將對應的SQL語句整理并拼接好對應的參數(shù),非常方便。這篇文章給大家介紹MyBatis Log 插件無法顯示SQL語句的原因,感興趣的朋友跟隨小編一起看看吧

Mybatis有什么用

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

1. 什么是Mybatis?

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

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

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

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

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

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

l 提供對象關(guān)系映射標簽,支持對象關(guān)系組建維護

l 提供XML標簽,支持編寫動態(tài)sql。

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

1、歷史悠久

MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目改名為MyBatis 。

2、阿里推動

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

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

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

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

好了,開始咱今天的正文

MyBatis Log是IDEA一款下載量非常高的插件,該插件可以對控制臺打印的日志進行解析,然后將對應的SQL語句整理并拼接好對應的參數(shù),非常方便。有時插件卻無法打印SQL,總的來說,有如下三種原因:

mybatis安裝地址

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

1. 項目的日志等級過高,修改日志等級為 DEBUG 或 INFO

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

2. mybatis配置中沒有設置將sql日志輸出到控制臺

## 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. 控制臺打印的日志格式不符合規(guī)范,插件無法解析

修改日志打印的格式即可,推薦格式如下:
## log4j.properties 文件
###控制臺日志輸出###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%p] - [%t] - [%d{yyyy-MM-dd HH\:mm\:ss\:SSS}] - (%c{1}\:%L) - %m%n
 
或者
 
## application.yml 文件
# 日志設置配置
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 插件無法顯示SQL語句的原因的文章就介紹到這了,更多相關(guān)MyBatis Log 插件無法顯示SQL語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot文件上傳保存路徑的問題

    springboot文件上傳保存路徑的問題

    這篇文章主要介紹了springboot文件上傳保存路徑的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • SpringBoot使用Guava實現(xiàn)日志脫敏的示例代碼

    SpringBoot使用Guava實現(xiàn)日志脫敏的示例代碼

    本文主要介紹了SpringBoot使用Guava實現(xiàn)日志脫敏的示例代碼,使用Guava中的Strings、Maps和CharMatcher類來進行日志脫敏,保護敏感數(shù)據(jù)的安全,感興趣的可以了解一下
    2024-01-01
  • 理解Java中的靜態(tài)綁定和動態(tài)綁定

    理解Java中的靜態(tài)綁定和動態(tài)綁定

    這篇文章主要幫助大家理解Java中的靜態(tài)綁定和動態(tài)綁定,在Java中存在兩種綁定方式,一種為靜態(tài)綁定,另一種就是動態(tài)綁定,亦稱為后期綁定,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Java實現(xiàn)人機猜拳小游戲

    Java實現(xiàn)人機猜拳小游戲

    這篇文章主要為大家詳細介紹了Java實現(xiàn)人機猜拳小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 淺談Spring Boot 異常處理篇

    淺談Spring Boot 異常處理篇

    本篇文章主要介紹了淺談Spring Boot 異常處理篇,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 聊聊Java三種常見的分布式鎖

    聊聊Java三種常見的分布式鎖

    目前分布式鎖的實現(xiàn)方案主要包括三種,本文就來介紹一下這三種常見的分布式鎖以及這三種鎖的性能等,具有一定的參考價值,感興趣的可以了解一下
    2023-06-06
  • Spring的@Conditional詳解

    Spring的@Conditional詳解

    這篇文章主要介紹了Spring的@Conditional詳解,給想要注入Bean增加限制條件,只有滿足限制條件才會被構(gòu)造并注入到Spring的IOC容器中,通常和@Bean注解一起使用,需要的朋友可以參考下
    2024-01-01
  • mybatis攔截器實現(xiàn)通用權(quán)限字段添加的方法

    mybatis攔截器實現(xiàn)通用權(quán)限字段添加的方法

    這篇文章主要給大家介紹了關(guān)于mybatis攔截器實現(xiàn)通用權(quán)限字段添加的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用mybatis具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-09-09
  • Java實現(xiàn)順序表的操作詳解

    Java實現(xiàn)順序表的操作詳解

    順序表是用一段物理地址連續(xù)的存儲單元依次存儲數(shù)據(jù)元素的線性結(jié)構(gòu),一般情況下采用數(shù)組存儲。本文主要介紹了順序表的實現(xiàn)與常用操作,需要的可以參考一下
    2022-09-09
  • Java中不常用但很好用的開發(fā)小技巧分享

    Java中不常用但很好用的開發(fā)小技巧分享

    其實干 Java 開發(fā),必然離不開一些計算,所以就會經(jīng)常用到 BigDecimal ,今天小編就來給大家分項一下那些不怎么常用,但是非常有用的方法,需要的可以參考一下
    2023-04-04

最新評論