1.实体map.xml中配置:
主键获取方式配置,mysql
<selectKey resultClass="java.lang.Integer" keyProperty="id">
select LAST_INSERT_ID()
</selectKey>
动态拼接where条件
<dynamic prepend="where">
<isNotNull>
plateId=#value#
</isNotNull>
</dynamic>
2.config配置
typeAlias 定义类型别名
<typeAlias alias="Item" type="com.tudou.tudoupromotion.entity.Item"/>
typeHandler 自定义类型转换
比如,将数据库中的1,2,3格式的数据转换为java 枚举
<typeHandler
javaType="com.tudou.tudoupromotion.entity.Plate"
callback="com.tudou.tudoupromotion.ext.ibatis.PlateHandler"/>
线程缓存等配置
<settings
cacheModelsEnabled="true"
enhancementEnabled="true"
lazyLoadingEnabled="false"
maxRequests="32"
maxSessions="10"
maxTransactions="5"
useStatementNamespaces="true"
/>
cacheModelsEnabled="true" 是否启动缓存机制
enhancementEnabled="true" 是否针对POJO启动字节码增强机制以提升getter/setter的调用效能避免使用javaReflect所带来的性能开销。同时Lazy Loading带来极大的性能提升。
maxRequests最大并发请求数(Statement数)
maxTransactions最大并发事务数
maxSessions最大Session数,即当前最大允许的并发SqlMapCliect数maxSessions设定必须界于
maxTransactions和maxRequests之间.即
maxTransactions>maxSessions>maxRequests