`

ibatIS的parameterClass="java.util.HashMap"使用Map类型参数

 
阅读更多

 

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>
 
分享到:
评论
1 楼 yxx676229549 2012-10-31  
this is what i want,thanks

相关推荐

    ibatis 用HashMap解决resultClass映射

    ibatis 是一个基于 Java 的开源持久层框架,它提供了 SQL 映射功能,使得开发者可以通过 XML 文件或注解来定义 SQL 查询语句、参数类型以及结果映射规则,从而极大地简化了 JDBC 编程的复杂性。与 Hibernate 等全 ...

    ibatis的多参数查询.doc

    &lt;select id="checkLogin2" parameterClass="java.util.Map" resultClass="java.lang.Integer"&gt; SELECT count(*) AS value FROM userinfo WHERE uid=#uid# and pwd=#pwd# ``` **Java代码:** ```java Map, ...

    解决IBatis缓存动态字段问题

    这里的 `&lt;select&gt;` 标签定义了一个查询语句,其参数类型为 `HashMap`,返回结果也是 `HashMap`。通过设置 `remapResults="true"`,可以强制IBatis每次执行此查询时都重新生成字段映射信息,而不是使用缓存的字段信息...

    Ibatis资料ibatai sql map iBATIS使用$和#的一些理解

    &lt;select id="getPeopleList" resultClass="model.User" parameterClass="java.util.Map"&gt; &lt;![CDATA[ select * from test where name like '%$name$%' ]]&gt; ``` 在Java代码中,我们创建一个HashMap,并将参数放入...

    ibatis高级特性

    &lt;select id="getUsersByCriteria" parameterClass="java.util.Map" resultMap="get-user-result"&gt; &lt;![CDATA[ select id, name, sex from t_user &lt;if test="name != null"&gt; where name like #{name} ]]&gt; ...

    ibatis的动态查询

    &lt;select id="selectAllProducts" parameterClass="java.util.HashMap" resultMap="ProductResult"&gt; select id, note from Product &lt;dynamic prepend="WHERE"&gt; &lt;!-- isPropertyAvailable 判断属性是否有效 --&gt; ...

    Spring and iBATIS

    &lt;update id="executeProcedure" parameterClass="java.util.Map"&gt; {call my_procedure(#{param1}, #{param2})} ``` 在Java代码中,可以通过传递参数调用这个存储过程: ```java Map, Object&gt; params = new ...

    ibatis学习文档

    `parameterClass`属性设置为`java.util.HashMap`,这意味着参数将作为一个HashMap传递。在`&lt;iterate&gt;`标签中,`property="ArrValue"`指定了HashMap中的键,对应数组参数的名称。例如,如果你的HashMap包含键`...

    iBatis习惯用的16条SQL语句

    在查询时,当参数类型是HashMap时,可以方便地传递多个参数,例如按条件筛选并分组: ```xml &lt;select id=...

Global site tag (gtag.js) - Google Analytics