Select元素標(biāo)簽輸入方式
基本數(shù)據(jù)類(lèi)型
字符串類(lèi)型
Map 類(lèi)型
Java bean 類(lèi)型
案例實(shí)操
輸入?yún)?shù)分類(lèi)
基本類(lèi)型祥楣,字符串开财,java bean,map,數(shù)組(刪除操作時(shí)體現(xiàn))误褪,List(添加時(shí)體現(xiàn))等每種情況定義如下
基本數(shù)據(jù)類(lèi)型
Statement 定義
<!-- 查詢(xún)客戶(hù)-->
<selectid="queryCustomerById"parameterType="int"resultType="com.xxx.pojo.Customer">
?? SELECT id,user_name 'userName',user_balance 'userBalance' FROM? yg_customer WHERE? id=#{id}
</select>
CustomerDao方法定義
CustomerqueryCustomerById(intid);
字符串類(lèi)型
Statement 定義
<!-- 查詢(xún)客戶(hù)-->
<selectid="queryCustomerByName"parameterType="string"resultType="com.xxx.pojo.Customer">
?? SELECT id,user_name 'userName',user_balance 'userBalance' FROM? yg_customer WHERE? user_name=#{userName}
</select>
Dao 方法定義
CustomerqueryCustomerById(intid);
Map 類(lèi)型
Statement 定義
<!-- 輸入?yún)?shù)為 map 類(lèi)型 -->
<!-- 查詢(xún)客戶(hù)-->
<selectid="queryCustomerByName"parameterType="map"resultType="com.xxx.pojo.Customer">
?? SELECT id,user_name 'userName',user_balance 'userBalance' FROM? yg_customer WHERE? user_name=#{userName}
</select>
Dao 方法定義
CustomerqueryCustomerByName(Map<String,Object>userName);
Java bean 類(lèi)型
Statement 定義
<!-- 輸入?yún)?shù)為 java bean 類(lèi)型 -->
<selectid="queryCustomerByParams"parameterType="customer"resultType="customer">
?? SELECT id,user_name 'userName',user_balance 'userBalance' FROM? yg_customer WHERE? user_name=#{userName}
</select>
Dao方法定義
CustomerqueryCustomerByParams(Customercustomer);
####
擴(kuò)展
結(jié)果類(lèi)型分類(lèi)
基本數(shù)據(jù)類(lèi)型责鳍,字符串,JavaBean兽间,Map,List等
基本數(shù)據(jù)類(lèi)型
Statement定義
<!-- 結(jié)果類(lèi)型為基本數(shù)據(jù) -->
<selectid="queryCustomerAccount"resultType="int">
?? select count(1) from yg_customer
</select>
Dao 方法定義與對(duì)應(yīng)實(shí)現(xiàn)
intqueryCustomerAccount();
字符串類(lèi)型
Statement定義
<!-- 結(jié)果類(lèi)型為字符串 -->
<selectid="queryCustomerNameById"resultType="string"parameterType="int">
?? select user_name from yg_customer WHERE id=#{id}
</select>
Dao 方法定義
StringqueryCustomerNameById(intid);
Java Bean
Statement定義
<selectid="queryUserByUser"parameterType="user"resultType="user">
?
?? select id,user_name as userName,user_pwd as userPwd from user where id=#{id}
?
</select>
List
Statement 定義
<resultMaptype="user"id="user_map">
<resultcolumn="id"property="id"/>
<resultcolumn="user_name"property="userName"/>
<resultcolumn="user_pwd"property="userPwd"/>
</resultMap>
<sqlid="user_column">
?? id,user_name,user_pwd
</sql>
<selectid="queryUserNyName2"parameterType="string"resultMap="user_map">
select<includerefid="user_column"/>
?? from user where user_name like concat("%",#{userName},"%")
</select>
Map 類(lèi)型數(shù)據(jù)
Statement 定義
<!-- 結(jié)果類(lèi)型為map -->
?
<selectid="queryUserByIdReturnMap"parameterType="int"resultType="map">
?
?? select id,user_name as userName,user_pwd as userPwd from user where id=#{id}
?
</select>
###