MyBatis配置------settings设置

settings 是 MyBatis 最复杂的配置,它能深刻影响 MyBatis 底层的运行,但是在大部分情况下使用默认值便可以运行,所以在大部分情况下不需要大量配置它,只需要修改一 些常用的规则即可,比如自动映射、驼峰命名映射、级联规则、 是否启动缓存、执行器(Executor)类型等。 setting 配置项说明,可参考官网。

settings 的配置项很多,但是真正用到的不会太多,把常用的配置项研究清楚就可以了,比如关于缓存的 cacheEnabled ,关于级联的 lazyLoadingEnabled 和 aggressiveLazyLoading,关于 自动映射的 autoMappingBehavior 和 mapUnderscoreToCamelCase,关于执行器类型的 defaultExecutorType 等。这里给出全量的配置样例。

<settings>
	<setting name="cacheEnabled" value="true"/>
	<setting name="lazyLoadingEnabled" value="true"/>
	<setting name="multipleResultSetsEnabled" value="true"/>
	<setting name="useColumnLabel" value="true"/>
	<setting name="useGeneratedKeys" value="false"/>
	<setting name="autoMappingBehavior" value="PARTIAL"/>
	<setting name="autoMappingUnknownColumnBehavior" value="WARNING"/>
	<setting name="defaultExecutorType" value="SIMPLE"/>
	<setting name="defaultStatementTimeout" value="25"/>
	<setting name="defaultFetchSize" value="100"/>
	<setting name="safeRowBoundsEnabled" value="false"/>
	<setting name="mapUnderscoreToCamelCase" value="false"/>
	<setting name="localCacheScope" value="SESSION"/>
	<setting name="jdbcTypeForNull" value="OTHER"/>
	<setting name="lazyLoadTriggerMethods" value="equals, clone, hashCode, toString"/>
</settings>
经验分享 程序员 微信小程序 职场和发展