myBatis3之SQL映射的XML文件(select元素)

myBatis3之SQL映射的XML文件(select元素)

----------

 

select

 

对简单类别的查询元素是非常简单的。比如:

<select id="selectPerson" parameterType="int" resultType="hashmap"> 
	SELECT * FROM PERSON WHERE ID = #{id} 
</select> 

这个语句被称作selectPerson,使用一个int(或Integer)类型的参数,并返回一个HashMap类型的对象,其中的列名列对应的值。 注意参数注释: #{id}. 这就告诉MyBatis创建一个预处理语句参数。使用JDBC,这样的一个参数在SQL中会由一个"?"来标识,并被传递到一个新的预处理语句中,就像这样:

String selectPerson = "SELECT * FROM PERSON WHERE ID=?"; 
PreparedStatement ps = conn.prepareStatement(selectPerson); 
ps.setInt(1,id); 

 

select元素有很多属性允许你配置,来决定每条语句的作用细节。 

<select 
	id=”selectPerson” 
	parameterType=”int” 
	parameterMap=”deprecated” 
	resultType=”hashmap” 
	resultMap=”personResultMap” 
	flushCache=”false” 
	useCache=”true” 
	timeout=”10000” 
	fetchSize=”256” 
	statementType=”PREPARED” 
	resultSetType=”FORWARD_ONLY”> 
属性描述
id 在命名空间中唯一的标识符,可以被用来引用这条语句。
parameterType 将会传入这条语句的参数类的完全限定名或别名。
resultType 

从这条语句中返回的期望类型的类的完全限定名或别名。注意集合情形,那应该是集合

可以包含的类型,而不能是集合本身。使用 resultType或 resultMap,但不能同时使用。

resultMap

命名引用外部的resultMap。返回map是MyBat is 最具力量的特性,对其有一个很好的理解的话,

许多复杂映射的情形就能被解决了。使用 resultMap 或 resultType,但不能同时使用。

flushCache将其设置为 true,不论语句什么时候被调用,都会导致缓存被清空。默认值:false。
useCache 将其设置为 true,将会导致本条语句的结果被缓存。默认值:true。
timeout  这个设置驱动程序等待数据库返回请求结果,并抛出异常时间的最大等待值。默认不设置(驱动自行处理)
fetchSize 这是暗示驱动程序每次批量返回的结果行数。默认不设置(驱动自行处理)

statementType 

STATEMENT,PREPARED 或 CALLABLE 的一种。这会让 MyBat is使用选择使用Statement,

PreparedStatement或 CallableStatement。默认值:PREPARED。 

resultSetType FORWARD_ONLY|SCROLL_SENSITIVE|SCROLL_INSENSITIVE中的一种。默认是不设置(驱动自行处理)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值