<!-- 为下面查询传参 -->
<parameterMap class="java.util.HashMap" id="parameterMap">
<parameter property="xwxh"/>
<parameter property="nsrsbh"/>
</parameterMap>
<!-- 根据纳税人识别号和行为序号取得【事实信息】 -->
<select id="getFactByNsrAndXwxh" resultMap="factMap" parameterMap="parameterMap">
select
ss.*
from
wfwz_ssb ss,wfwz_djb dj
where
ss.djxh=dj.djxh
and
ss.yxbj_dm=dj.yxbj_dm
and
dj.yxbj_dm='01'
and
dj.xwxh=?
and
dj.nsrsbh=?
</select>
/**
* 根据纳税人识别号和行为序号取得事实信息
*/
@SuppressWarnings("unchecked")
public List<Fact> getFactByNsrAndXwxh(HashMap<String,String> hashMap){
return (List<Fact>)getAll("Fact.getFactByNsrAndXwxh", hashMap);
}
测试
public void testGetFactByNsrAndXwxh(){
FactService factService = (FactService)applicationContext.getBean("factService");
HashMap<String,String> map=new HashMap<String,String>();
map.put("xwxh", "0005");
map.put("nsrsbh", "460200760106052");
List<Fact> list=factService.getFactByNsrAndXwxh(map);
System.out.println(list.size());
}
分享到:
相关推荐
在使用ibatis(现称为MyBatis)进行数据库操作时,经常会遇到需要处理多个输入参数的情况。然而,默认情况下ibatis只支持单个输入参数,这在实际开发中往往难以满足需求。本文将详细介绍如何在ibatis中实现多参数...
`#value#`是Ibatis的占位符,代表传递给SQL查询的参数。 `sqlMapConfig.xml`文件是Ibatis的全局配置,它引用了`book.xml`,并设置了一些Ibatis的配置选项,如缓存和动态代理的启用。 综上所述,Ibatis通过配置文件...
- 避免在`WHERE`子句中使用多个条件或`OR`操作符,而是应该使用`IN`操作符或者`UNION ALL`合并多个查询。 3. Struts、Spring与Ibatis的集成: - Struts作为MVC框架,主要负责视图与控制器的交互。在项目中,`...
本地缓存作用于单个SqlSession,而二级缓存则可以在多个SqlSession之间共享,但需要注意并发控制和数据一致性问题。 8. **插件支持**:Ibatis允许开发者编写自定义插件,通过拦截器模式对SqlSession或Executor的...
在iBatis中,输入输出参数类型的支持非常丰富,几乎涵盖了Java中常见的所有基本数据类型及其封装类,同时也支持自定义JavaBean类型的传递。这使得开发者在处理数据库操作时具有很高的灵活性。 - **基本数据类型**: ...
`org.apache.ibatis.executor.parameter.ParameterHandler`实现了这个功能,它根据传递的参数对象,动态地设置SQL的参数。 七、插件机制 iBatis的插件机制允许用户自定义拦截器,实现对Executor、StatementHandler...
1. **SQL映射文件**:每个XML文件代表一个数据库表或视图,包含多个SQL语句。这些语句可以是静态的,也可以是动态的,后者允许基于输入参数动态生成SQL。 2. **动态SQL**:IBATIS提供了一系列元素(如if、choose、...
同时,它还支持简单类型、复杂类型(如Map或自定义对象)的参数传递。 3. 结果映射:通过`<resultMap>`标签,可以定义如何将查询结果映射到Java对象,包括一对一、一对多、多对一、自定义类型转换等多种映射方式。...
5. **结果集映射**:iBATIS能自动将查询结果映射到Java对象,包括单一结果、多个结果集以及复杂的一对多关联映射。 6. **参数映射**:iBATIS可以将Java方法的参数自动映射到SQL的参数,减少了代码量,提高了开发...
在iBatis中,我们通常通过XML配置文件或者注解来定义SQL语句,并使用占位符(例如#{}或${})来传递参数。 1. **参数绑定**:iBatis使用占位符(#{})进行参数绑定,可以防止SQL注入攻击。当使用#{paramName}时,...
iBatis是Java语言中一个著名的持久层框架,它将SQL语句与Java代码分离,使得数据库访问更加灵活且易于维护。以下是该书可能涵盖的关键知识点: 1. **iBatis简介**:介绍iBatis的基本概念,作为一款轻量级的数据持久...
总结,ibatIS调用存储过程涉及了框架配置、Mapper接口设计、XML映射文件编写、Java代码实现等多个方面,理解这些知识点对于在实际项目中灵活运用ibatIS调用存储过程至关重要。通过熟练掌握这些技能,开发者可以更...
5. **参数映射**:使用#{param}占位符,配合Map或JavaBean传递参数,实现参数与SQL中的动态绑定。 6. **缓存机制**:Ibatis提供了本地缓存和二级缓存,可以提高数据访问速度,但需要根据项目需求谨慎配置和使用。 ...
2. 参数映射:通过`<select>`、`<insert>`、`<update>`和`<delete>`标签,iBatis自动将Java对象的属性值绑定到SQL参数,简化了参数传递。 3. 结果映射:iBatis能够自动将查询结果转换为Java对象,支持一对一、一对...
对于更复杂的情况,如需要插入一个包含多个属性的对象到数据库,iBATIS提供了`<insert>`标签来实现。在该标签内部,可以通过`#propertyName#`的形式引用Java对象的属性,其中`propertyName`对应Java对象的属性名。...
参数可以通过命名或位置来传递,便于在SQL语句中引用。 6. **结果映射** 结果映射用于将查询结果转换为Java对象。通过`<resultMap>`标签,你可以指定字段名和Java对象属性之间的映射关系,甚至处理一对一、一对多...
在Ibatis中,如果一个方法需要接收多个参数,可以使用@Param注解为每个参数命名,然后在SQL语句中通过占位符引用它们。例如,`@Select("SELECT * FROM table WHERE id = #{id} AND name = #{name}")`。 4. **...