MyBatis Log 플러그인이 SQL 문장을 표시할 수 없는 이유 확인

마이바티스가 무슨 소용이야.
며칠 전에 아리의 큰 소와 이야기를 나누었다. 그는 성능에 대한 요구가 높고 수요 변화가 많은 인터넷 프로젝트에 대해 sql 최적화에 사용되는 개발 시간은 가장 큰 부분이라고 말했다. 때로는 코드를 한 시간 쓰고 최적화를 반복하는 데 몇 주가 걸릴 수도 있다. 이때 Mybatis라는 설정이 비교적 유연한 프레임워크의 장점이 나타난다!마이바티스는 왜 국내에서 이렇게 유행합니까?
1.Mybatis란 무엇인가?
MyBatis는 맞춤형 sql, 저장 프로세스 및 고급 맵을 지원하는 우수한 지구층 프레임워크입니다.MyBatis는 거의 모든 JDBC 코드와 수동 설정 매개 변수, 추출 결과 집합을 피합니다.MyBatis는 간단한 XML이나 메모를 사용하여 기본체를 구성하고 매핑하며 인터페이스와 Java를 데이터베이스의 레코드로 매핑합니다.
2. 마이바티스는 왜 우세한가?
l 간단하고 배우기 쉽다: 그 자체가 매우 작고 간단하다.제3자 의존이 없고 가장 간단한 설치는 두 개의jar 파일 + 몇 개의 sql 맵 파일을 설정하면 배우기 쉽고 사용하기 쉬우며 JDBC에 비해 코드 양이 50% 이상 줄어든다.
l 유연성: Mybatis는 응용 프로그램이나 데이터베이스의 기존 디자인에 아무런 영향을 주지 않습니다. SQL은 XML에 쓰여 있으며 프로그램 코드에서 철저히 분리되어 결합도를 낮추고 통일된 관리와 최적화에 편리하며 다시 사용할 수 있습니다.
l sql와 프로그램 코드의 결합 해제: DAO층을 제공함으로써 업무 논리와 데이터 접근 논리를 분리하여 시스템의 설계를 더욱 뚜렷하고 유지보수하기 쉬우며 단원 테스트하기 쉽다.ql와 코드의 분리로 유지보수성이 향상되었습니다.
l 객체와 데이터베이스의 ORM 필드 관계 매핑을 지원하는 매핑 레이블 제공
l 대상 관계 매핑 라벨 제공, 대상 관계 구성 유지 보수 지원
l 동적 sql 작성을 지원하는 XML 태그를 제공합니다.
3. 마이바티스는 왜 국내에서 이렇게 유행합니까?
1. 유구한 역사
마이바티스는 본래 아파치의 개원 프로젝트인 iBatis로 2010년에 이 프로젝트는 마이바티스로 개명되었다.
2. 아리 추진
사실 10년 전에 우리가 주로 사용했던 ORM 프레임워크는 바로 iBatis였고 알리바바는 국내 자바 개발자들에게 가장 큰 영향을 미친 회사였다.알리가 국내 자바 지역사회에 미친 영향력은 모두가 알고 있다. 알리가 자바 지역사회에 많은 실용적인 소스 개발 도구를 기여했고 국내 자바 개발자가 알리가 소스 개발 제품에 대한 수용 정도도 가장 높다.
초기에 아리계 이직 엔지니어의 영향력도 만만치 않았다. 아리계에서 이직한 엔지니어들이 각 규모의 회사에 들어갔고 통상적으로 비교적 높은 직위를 맡았으며 상대적으로 많은 발언권을 가지고 있다. 새로운 회사에서 자신이 익숙한 iBatis를 계속 사용하는 것은 더 이상 이상할 것이 없다.
3. 인터넷 환경에서의 선택
MyBatis는 패키징이 적고 접점이 많아 구조에 적합합니다.아주 복잡한 장면을 만났을 때 좋은 ql 지원이 있습니다.간단하고 효율적이며 최적화도 편리하고 현재의 개발 리듬에 부합된다. 인터넷 회사들은 먼저 신속하게 개발하여 시장을 점령한 다음에 코드를 최적화한다.그리고 이 과정의 수요는 자주 바뀌고 개발자도 유동성이 있기 때문에 관리를 편리하게 하기 위해 모두 Mybatis를 선택했다.
자, 오늘의 본문을 시작합시다
MyBatis Log는 IDEA의 다운로드량이 매우 많은 플러그인으로, 이 플러그인은 컨트롤러가 인쇄한 로그를 해석한 다음에 대응하는 SQL 문장을 정리하고 대응하는 매개 변수를 연결할 수 있어 매우 편리하다.플러그인은 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. 컨트롤러가 인쇄한 로그 형식이 규범에 맞지 않아 플러그인을 확인할 수 없습니다

 , :
## 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'
총결산
이 글은 MyBatis Log 플러그인이 SQL 문장을 표시할 수 없는 이유에 대해 소개합니다. 더 많은 MyBatis Log 플러그인이 SQL 문장을 표시할 수 없는 이유는 저희 이전의 문장을 검색하거나 아래의 관련 문장을 계속 훑어보십시오. 앞으로 많은 응원 부탁드립니다!

좋은 웹페이지 즐겨찾기