`

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的错误总结

    在ibatis中,`parameterClass`属性用于指定传递给SQL语句的参数类型。例如,在给定的部分内容中: ```xml &lt;select id="queryIfSysNotificationPri" parameterClass="Long" resultClass="Long"&gt; select rf.role_id ...

    IBatis.net-IBatis.DataAccess.1.9.2/IBatis.DataMapper.1.6.2

    接着,使用IBatis.DataAccess的SqlMap实例,加载配置文件,通过接口调用执行SQL,例如: ```csharp ISqlMap sqlMap = SqlMap.GetInstance(); sqlMap.Configure("SqlMap.config"); List&lt;MyObject&gt; objects = sqlMap....

    ibatis-2.3.4.726.jar,ibatis-2.3.0.677.jar,ibatis-2.3.3.720.jar下载

    1. **SQL Map配置**:iBATIS的核心是SQL Map配置文件,它定义了SQL语句及其参数映射。开发者可以将每个SQL查询映射到一个Java方法,使得数据库操作更加灵活且易于维护。 2. **动态SQL**:iBATIS支持在SQL Map中编写...

    IBatis.DataMapper.1.6.2.bin.zip

    本篇文章将围绕"IBatis.DataMapper.1.6.2.bin.zip"和"IBatis.DataMapper.1.9"这两个开发包,深入探讨其核心概念、功能特性以及版本间的差异,帮助开发者更好地理解和应用这一框架。 1. **IBatis DataMapper简介** ...

    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-设置缓存模式-Java源码(下载)

    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"&gt; &lt;sqlMap namespace="Account"&gt; &lt;typeAlias alias="Account" type="Account"/&gt; &lt;resultMap id...

    IBatisNet.Common.1.6.2、IBatis.DataAccess.1.9.2、IBatis.DataMapper.1.6.2

    标题和描述中提到的"IBatisNet.Common.1.6.2、IBatis.DataAccess.1.9.2、IBatis.DataMapper.1.6.2"是针对一个名为IBatisNet的框架的不同组件的版本号。IBatisNet是一个在.NET平台上实现的开源持久层框架,它源于Java...

    ibatis2.3.4.8.jar 和 ibatis-2.3.4.726.jar两个版本的下载

    Ibatis,全称为MyBatis,是一个优秀的Java持久层框架,它主要负责简化数据库操作,将SQL语句与Java代码分离,使得开发人员能够更加专注于业务逻辑。在本主题中,我们将深入探讨Ibatis的两个特定版本:ibatis2.3.4.8....

    ibatis源码 例子

    import java.util.List; import com.ibatis.common.resources.Resources; import com.ibatis.sqlmap.client.SqlMapClient; import com.ibatis.sqlmap.client.SqlMapClientBuilder; import com.icss.model.Employee...

    IBatis.DataAccess.1.9.2

    包含IBatis.net 开发所需的Castle.DynamicProxy.dll,IBatisNet.Common.dll,IBatisNet.DataAccess.dll,IBatisNet.Common.dll以及相关配置文件

    ibatis.util包

    1. **Logger**: Ibatis提供了一个日志接口`org.apache.ibatis.logging.Log`,而`ibatis.util.LogFactory`则负责根据用户配置的实现(如Log4j、SLF4J或Java内置的日志系统)创建对应的日志实例,用于记录SQL执行和...

    解决IBatis缓存动态字段问题

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

    ibatis list

    然而,使用`&lt;iterate&gt;`时也需注意参数类型匹配问题,如`parameterClass`的正确设置,以及避免`StringIndexOutOfBoundsException`等异常的发生。掌握这些技巧,将使你在处理大规模数据操作时更加得心应手。

    ibatis-sqlmap-2.3.4.726-sources.jar.zip_birth84v_cutting1v2_ibat

    对于SQL语句的执行,SqlMapClient使用Executor接口,该接口定义了不同类型的SQL执行策略,如SimpleExecutor、ReuseExecutor和BatchExecutor,分别对应简单执行、重用预编译语句和批量操作。 深入源码,我们可以看到...

    ibatis-2.3.3.720.jar

    ibatis-2.3.3.720.jar

    Spring+Ibatis集成开发实例.doc

    DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"&gt; &lt;sqlMap resource="ch10/SpringAndIbatis/Ibatis.xml" /&gt; ``` iBatis的SQL映射...

    ibatis-2.3.0.677.jar

    iBATIS 是一个开源的 Java 框架,主要用于简化数据库与应用程序之间的交互。它在早期广泛应用于企业级应用开发,尤其是在那些需要深度集成 SQL 查询的项目中。 描述 "ibatis jar src ibatis 2 3 0 677" 暗示这个...

Global site tag (gtag.js) - Google Analytics