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 等全 ...
在ibatis中,`parameterClass`属性用于指定传递给SQL语句的参数类型。例如,在给定的部分内容中: ```xml <select id="queryIfSysNotificationPri" parameterClass="Long" resultClass="Long"> select rf.role_id ...
接着,使用IBatis.DataAccess的SqlMap实例,加载配置文件,通过接口调用执行SQL,例如: ```csharp ISqlMap sqlMap = SqlMap.GetInstance(); sqlMap.Configure("SqlMap.config"); List<MyObject> objects = sqlMap....
1. **SQL Map配置**:iBATIS的核心是SQL Map配置文件,它定义了SQL语句及其参数映射。开发者可以将每个SQL查询映射到一个Java方法,使得数据库操作更加灵活且易于维护。 2. **动态SQL**:iBATIS支持在SQL Map中编写...
本篇文章将围绕"IBatis.DataMapper.1.6.2.bin.zip"和"IBatis.DataMapper.1.9"这两个开发包,深入探讨其核心概念、功能特性以及版本间的差异,帮助开发者更好地理解和应用这一框架。 1. **IBatis DataMapper简介** ...
<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, ...
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="Account"> <typeAlias alias="Account" type="Account"/> <resultMap id...
标题和描述中提到的"IBatisNet.Common.1.6.2、IBatis.DataAccess.1.9.2、IBatis.DataMapper.1.6.2"是针对一个名为IBatisNet的框架的不同组件的版本号。IBatisNet是一个在.NET平台上实现的开源持久层框架,它源于Java...
Ibatis,全称为MyBatis,是一个优秀的Java持久层框架,它主要负责简化数据库操作,将SQL语句与Java代码分离,使得开发人员能够更加专注于业务逻辑。在本主题中,我们将深入探讨Ibatis的两个特定版本:ibatis2.3.4.8....
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.net 开发所需的Castle.DynamicProxy.dll,IBatisNet.Common.dll,IBatisNet.DataAccess.dll,IBatisNet.Common.dll以及相关配置文件
1. **Logger**: Ibatis提供了一个日志接口`org.apache.ibatis.logging.Log`,而`ibatis.util.LogFactory`则负责根据用户配置的实现(如Log4j、SLF4J或Java内置的日志系统)创建对应的日志实例,用于记录SQL执行和...
这里的 `<select>` 标签定义了一个查询语句,其参数类型为 `HashMap`,返回结果也是 `HashMap`。通过设置 `remapResults="true"`,可以强制IBatis每次执行此查询时都重新生成字段映射信息,而不是使用缓存的字段信息...
然而,使用`<iterate>`时也需注意参数类型匹配问题,如`parameterClass`的正确设置,以及避免`StringIndexOutOfBoundsException`等异常的发生。掌握这些技巧,将使你在处理大规模数据操作时更加得心应手。
对于SQL语句的执行,SqlMapClient使用Executor接口,该接口定义了不同类型的SQL执行策略,如SimpleExecutor、ReuseExecutor和BatchExecutor,分别对应简单执行、重用预编译语句和批量操作。 深入源码,我们可以看到...
ibatis-2.3.3.720.jar
DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> <sqlMap resource="ch10/SpringAndIbatis/Ibatis.xml" /> ``` iBatis的SQL映射...
12. **map/hashmap**:`java.util.Map/java.util.HashMap` - `map` 和 `hashmap` 是同义词,表示映射类型。 13. **list/arraylist**:`java.util.List/java.util.ArrayList` - `list` 和 `arraylist` 是同义词,...