728x90
- target: mybatis 기본 설정 관련 (mapper-config.xml)
- method:
- mybatis 설정 파일은 mapper-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!--Mybatis 설정 -->
<settings>
<setting name="cacheEnabled" value="true"/> <!-- mybatis cache 사용여부 -->
<setting name="localCacheScope" value="SESSION"/> <!-- 로컬캐시 사용여부(SESSION: 세션을 사용해서 모든쿼리를 캐시) -->
<setting name="lazyLoadingEnabled" value="true"/> <!-- 지연로딩 사용여부 -->
<setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/> <!-- 지연로딩을 야기하는 객체의 메소드를 명시 -->
<setting name="multipleResultSetsEnabled" value="true"/> <!-- 한 개의 구문에서 여러 개의 ResultSet을 허용할지 여부 -->
<setting name="useColumnLabel" value="true"/> <!-- 컬럼명 대신 컬럼 라벨을 사용 -->
<setting name="useGeneratedKeys" value="false"/> <!-- 생성키에 대한 JDBC 지원 허용 여부 -->
<setting name="autoMappingBehavior" value="PARTIAL"/> <!-- mybatis가 컬럼을 필드/프로퍼티에 자동으로 매핑할지와 방법에 대한 명시(PARTIAL은 중첩되지 않은 것들을 매핑 -->
<setting name="defaultExecutorType" value="SIMPLE"/> <!-- 디폴트 Executor 설정(SIMPLE은 특별히 동작하는 것은 업음) -->
<setting name="defaultStatementTimeout" value="60"/> <!-- DB 응답 타임아웃 설정 -->
<setting name="safeRowBoundsEnabled" value="false"/> <!-- 중첩구문내 RowBound 사용 허용여부 -->
<setting name="mapUnderscoreToCamelCase" value="true"/> <!-- 전통적 DB 컴럼명을 JAVA의 Camel표기법으로 자동 매핑 설정 -->
<setting name="jdbcTypeForNull" value="NULL"/> <!-- mybatis로 넘어오는 parameter가 null인 경우, jdbcType을 Setting -->
<setting name="callSettersOnNulls" value="true"/> <!-- 가져온 값이 null일때 setter나 맵의 put 메소드를 호출할지를 명시 (false일경우, null인 field는 제거되어 나타남 : default는 false -->
</settings>
</configuration>
728x90
'Dev > Spring.SpringBoot' 카테고리의 다른 글
JDBC Internal - 타임아웃의 이해 (0) | 2022.11.10 |
---|---|
[DBCP] Commons DBCP 이해하기 (Common-dbcp, dbcp2) (0) | 2022.11.04 |
[mybatis] 컬럼명 snake case에서 camel case로 자동 변환 (0) | 2022.09.28 |
[ehcache 2.x] 캐쉬 라이브러리 설정 관련 (0) | 2022.07.21 |
[Spring] 다중 DB 연동 (0) | 2022.07.21 |