首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

mybatis的SQL投射配置文件

2012-11-30 
mybatis的SQL映射配置文件SQL映射文件有很少的几个顶级元素(按照他们应该被定义的顺序如下)。?cache - ?配

mybatis的SQL映射配置文件

SQL映射文件有很少的几个顶级元素(按照他们应该被定义的顺序如下)。

?

cache - ?配置给定命名空间的缓存cache-ref – ?从其他命名空间引用缓存配置。?resultMap – ?最复杂,也是最有力量的元素,用来描述如何从数据库结果集中来加载你的对象。parameterMap – ?已经被废弃了!老式风格的参数映射。内联参数是首选,这个元素可能在将来被移除。sql – ?可以重用的SQL块,也可以被其他语句引用。insert – ?映射插入语句?update – ?映射更新语句?delete -映射删除语句select - 映射查询语句SELECT

简单的SELECT 语句如下:

?

parameterType="domain.blog.Author"
flushCache="true"
statementType="PREPARED"
keyProperty=""
useGeneratedKeys=""
timeout="20000">SQL?

这个元素可以被用来定义可重用的SQL代码段,可以包含在其他语句中,例如

?

package com.someapp.model; public class User { private int id; private String username; private String hashedPassword; //set和get方法。。。。}

?

?

flushInterval="60000"
size="512"
readOnly="true"/>

?

?这个配置创建了一个FIFO缓存,并每隔60秒刷新,存数结果对象或列表的512个引用,而且返回的对象被认为是只读的,因此在不同线程中的调用者之间修改它们会导致冲突。

?

可用的收回策略有:?

?

LRU – ?最近最少使用的:移除最长时间不被使用的对象。FIFO – ?先进先出:按对象进入缓存的顺序来移除它们。SOFT – ?软引用:移除基于垃圾回收器状态和软引用规则的对象。WEAK – ?弱引用:更积极地移除基于垃圾收集器状态和弱引用规则的对象。?默认的是LRU。?

flushInterval(刷新间隔)可以被设置为任意的正整数,而且它们代表一个合理的毫秒形式的时间段。默认情况是不设置,也就是没有刷新间隔,缓存仅仅调用语句时刷新。?

?

size(引用数目)可以被设置为任意正整数,要记住你缓存的对象数目和你运行环境的可用内存资源数目。默认值是1024。?

?

?readOnly(只读)属性可以被设置为true 或false。只读的缓存会给所有调用者返回缓存对象的相同实例。因此这些对象不能被修改。这提供了很重要的性能优势。可读写的缓存会返回缓存对象的拷贝(通过序列化)。这会慢一些,但是安全,因此默认是false。?

?

?

动态SQL

动态SQL的元素有以下几个:

?

if??choose(when,otherwise)??trim(where,set) ??foreach?

?

?

if

?

?

SELECT *
FROM POST P
WHERE ID in
<foreac h ite m="item" inde x="index" c ollection="list"
open="(" separator="," close=")">
#{item}
</fore ach>
</select>

?foreach 元素是非常强大的,它允许你指定一个集合,声明集合项和索引变量,它们可以用在元素体内。它也允许你指定开放和关闭的字符串,在迭代之间放置分隔符。

?

热点排行
Bad Request.