ibatIS中的parameterClass,一般分类两种,1种为传model,另一种为传map
一、parameterClass传model参数
<select id="queryModel" parameterClass="com.hanpeng.base.phone.model.TDictionary" resultClass="com.hanpeng.base.phone.model.TDictionary">
SELECT
D_CODE as dCode ,
D_NAME as dName ,
D_INFO as dInfo ,
D_SERVER_NAME as dServerName ,
D_CLIENT_NAME as dClientName ,
REMARK as remark ,
D_SHORT as dShort ,
D_SERVER_COLOR as dServerColor ,
D_CLIENT_COLOR as dClientColor
FROM T_DICTIONARY
<dynamic prepend="WHERE">
<isNotEmpty prepend=" AND " property="dCode">
D_CODE = #dCode# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dName">
D_NAME = #dName# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dInfo">
D_INFO = #dInfo# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dServerName">
D_SERVER_NAME = #dServerName# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dClientName">
D_CLIENT_NAME = #dClientName# </isNotEmpty>
<isNotEmpty prepend=" AND " property="remark">
REMARK = #remark# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dShort">
D_SHORT = #dShort# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dServerColor">
D_SERVER_COLOR = #dServerColor# </isNotEmpty>
<isNotEmpty prepend=" AND " property="dClientColor">
D_CLIENT_COLOR = #dClientColor# </isNotEmpty>
</dynamic>
</select>
二、parameterClass传map参数
1.
/**
* 快速备注
* @param request
* @return
* @author sgdjava
* @date 2011-9-8 下午05:00:14
*/
public static List getKuaiSuBeiZhu(HttpServletRequest request) {
List result = null;
try {
String sendtype="";
if(request.getAttribute("sendType") != null)
sendtype = (String)request.getAttribute("sendType");
Map search = new HashMap();
search.put("wbType", sendtype);
result = selectUtilSerivce.queryKuaiSuBeiZhu(search);
} catch (Exception e) {
log.error("SelectUtilReq getKuaiSuBeiZhu Err",e);
}
return result;
}
2.daoImpl
public List<Map<String, Object>> queryKuaiSuBeiZhu(Map searchMap) {
return getSqlMapClientTemplate().queryForList("TDictionary.queryKuaiSuBeiZhu", searchMap);
}
3.sqlMap
<select id="queryKuaiSuBeiZhu" parameterClass="java.util.HashMap" resultClass="java.util.HashMap">
SELECT T.WB_INFO AS "val" , T.WB_INFO AS "key" FROM T_WRITE_BACK T
<dynamic prepend="WHERE">
<isNotEmpty prepend=" AND " property="wbType">
T.WB_TYPE=#wbType# </isNotEmpty>
</dynamic>
ORDER BY T.WB_NUM ASC
</select>
分享到:
相关推荐
ibatis 是一个基于 Java 的开源持久层框架,它提供了 SQL 映射功能,使得开发者可以通过 XML 文件或注解来定义 SQL 查询语句、参数类型以及结果映射规则,从而极大地简化了 JDBC 编程的复杂性。与 Hibernate 等全 ...
<select id="checkLogin2" parameterClass="java.util.Map" resultClass="java.lang.Integer"> SELECT count(*) AS value FROM userinfo WHERE uid=#uid# and pwd=#pwd# ``` **Java代码:** ```java Map, ...
这里的 `<select>` 标签定义了一个查询语句,其参数类型为 `HashMap`,返回结果也是 `HashMap`。通过设置 `remapResults="true"`,可以强制IBatis每次执行此查询时都重新生成字段映射信息,而不是使用缓存的字段信息...
<select id="getPeopleList" resultClass="model.User" parameterClass="java.util.Map"> <![CDATA[ select * from test where name like '%$name$%' ]]> ``` 在Java代码中,我们创建一个HashMap,并将参数放入...
<select id="getUsersByCriteria" parameterClass="java.util.Map" resultMap="get-user-result"> <![CDATA[ select id, name, sex from t_user <if test="name != null"> where name like #{name} ]]> ...
<select id="selectAllProducts" parameterClass="java.util.HashMap" resultMap="ProductResult"> select id, note from Product <dynamic prepend="WHERE"> <!-- isPropertyAvailable 判断属性是否有效 --> ...
<update id="executeProcedure" parameterClass="java.util.Map"> {call my_procedure(#{param1}, #{param2})} ``` 在Java代码中,可以通过传递参数调用这个存储过程: ```java Map, Object> params = new ...
`parameterClass`属性设置为`java.util.HashMap`,这意味着参数将作为一个HashMap传递。在`<iterate>`标签中,`property="ArrValue"`指定了HashMap中的键,对应数组参数的名称。例如,如果你的HashMap包含键`...
在查询时,当参数类型是HashMap时,可以方便地传递多个参数,例如按条件筛选并分组: ```xml <select id=...