Mybatis相关设置
MyBatis的设置
学习笔记:
Mybatis上设置信息可以配置,也可不进型配置,在对Mybatis的setting配置后,会影响到它的运行时行为。以下是相关设置信息的关键字,及所包含的意义:
aggressiveLazyLoding : 启用时(true也为默认值),对任何延迟属性的调用会带有延迟加载属性的对象进行完整加载。
未启用(false),每种属性将会按照需要去加载。
autoMappingBehavior:指定Mybatis怎样去自动映射到字段或属性。其含有三个值:
NONE:取消自动映射。
PARTIAL(默认值):只会映射没有定义嵌套结果集映射的结果集。
FULL:自动映射任意复杂的结果集。
callSettersOnNulls:指定结果集中值为null时,是否调用映射对象色setter(map对象时未put)方法,这对于有Map.keySet()依赖或null值初始化的时候是有用的。
默认值为false
注:基本类型int,Boolean是不能设置为null的。
cacheEnabled:影响所有映射器中配置的缓存全局开关,默认值为true。
defaultExecutorType:配置默认的执行器。
SIMPLE:简单的执行器
REUSE:执行器会重用预处理语句(prepared,statements)
BATCH:执行器将重用语句并执行批量更新。
defaultStatementTimeout:设置超市时间,它决定驱动等待数据库相应的秒数,当没有设置时,则取驱动默认的等地秒数。
默认值为Not Set(null)
defaultScriptingLanguage:指定动态SQL生成的默认语言,默认值为:
org.apche.ibatis.sc.ripting.xmltags.XMLDynamicLanguageDriver
可自定义类的别名或者类的全限定名。
localCacheScope: Mybatis利用本地缓存机制(Local Cache)防止循环引用(circular reference)和加速重复嵌套查询。
默认值为SESSION 缓存一个会话中执行的所有查询
STATEMENT 会话仅用在语句执行上,对相同SqlSession的不同调用将不会共享数据
jdbcTypeForNull: 当没有为参数提供特定的jdbc类型时,为空值指定JDBC 类型。某些驱动需要指定列的JDBC类型,多数情况直接用一般类型即可,比如NULL、 VARCHAR、OTHER(默认值)
safeRowBoundsEnabled: 允许在嵌套语句中使用分页(RowBounds)。
默认值为false
mapUnderscoreToCamelCase: 是否开启驼峰命名规则(camel case)映射,即从经典数据库列名A_COLUMN到经典Java属性aColumn的类似映射。
默认值为false
useGeneratedKeys: 允许JDBC自动生成主键,需要驱动兼容。如果设置为true,则强制使用自动生成主键,尽管部分驱动不能兼容,但仍可正常工作。
默认值为false
multipleResultSetsEnabled: 是否允许单一语句返回多结果集(需要兼容驱动)。
默认值为true。
以上就是Mybatis相关设置的详细内容,更多请关注其它相关文章!