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。

 

 

          

原文地址:https://www.cnblogs.com/staticking/p/6950311.html