ibatis总结(1)

ibatis总结(1)

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

你可能感兴趣的:(ibatis总结(1))