MyBatis之传入参数——parameterType(转)
鸣谢:http://blog.csdn.net/liaoxiaohua1981/article/details/6862764
--------------------------------------------------------------------
在MyBatis的select、insert、update、delete这些元素中都提到了parameterType这个属性。MyBatis现在可以使用的parameterType有基本数据类型和JAVA复杂数据类型
- 基本数据类型:包含int,String,Date等。基本数据类型作为传参,只能传入一个。通过#{参数名} 即可获取传入的值
- 复杂数据类型:包含JAVA实体类、Map。通过#{属性名}或#{map的KeyName}即可获取传入的值
基本数据类型参数示例:
根据班级ID查询教师列表
xml文件
<select id="selectTeacher" parameterType="int" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} </select>
java代码
List<Teacher> tList = teacherMapper.selectTeacher(2); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
JAVA实体类型参数示例:
xml文件 (注:parameterType="com.myapp.domain.Teacher" 可简写为 parameterType="Teacher" )
<select id="selectTeacher" parameterType="com.myapp.domain.Teacher" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} </select>
java代码
java代码 Teacher queryTeacher=new Teacher(); queryTeacher.setId(2); List<Teacher> tList = teacherMapper.selectTeacher(queryTeacher); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
Map参数示例:
xml文件
<select id="selectTeacher" parameterType="Map" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} and sex=#{sex} </select>
java代码
Map<String,String> map=new HasMap<String,String>(); map.put("id","2"); map.put("sex","男"); List<Teacher> tList = teacherMapper.selectTeacher(map); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
另外MyBatis还提供了一个使用注解来参入多个参数的方式。这种方式需要在接口的参数上添加@Param注解
示例:
接口方法
public List<Teacher> selectTeacher(@Param(value="id") String id,@Param(value="sex") String sex);
XML文件
<select id="selectTeacher" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} and sex=#{sex} </select>
测试代码
List<Teacher> tList = teacherMapper.selectTeacher("2","男"); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString());
MyBatis之传入参数——parameterType(转)相关推荐
- MyBatis之传入参数——parameterType
在MyBatis的select.insert.update.delete这些元素中都提到了parameterType这个属性.MyBatis现在可以使用的parameterType有基本数据类型和JA ...
- MyBatis之传入参数
在MyBatis的select.insert.update.delete这些元素中都提到了parameterType这个属性.MyBatis现在可以使用的parameterType有基本数据类型和Ja ...
- 五、深入理解Mybatis中的参数parameterType (传递一个简单参数,传递多个参数:@Param、使用自定义对象、按位置、使用Map)
1.1 parameterType parameterType: 接口中方法参数的类型, 类型的完全限定名或别名.这个属性是可选的,因为 MyBatis可以推断出具体传入语句的参数,默认值为未设置(u ...
- mybatis中传入参数的几种方式
第一种: Dao层的方法 Public User selectUser(String name,String password); 对应的Mapper.xm <select id="s ...
- mybatis传入参数类型parameterType详解
前言 Mybatis的Mapper文件中的select.insert.update.delete元素中都有一个parameterType属性,用于对应的mapper接口方法接受的参数类型. ( res ...
- MyBatis传入参数为list、数组、map写法
1.foreach简单介绍: foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. foreach元素的属性主要有item,index,collection,open,sep ...
- Mybatis传入参数类型为Map
转载自 Mybatis传入参数类型为Map mybatis更新sql语句: <update id="publishT00_notice" parameterType=&q ...
- Mybatis传入参数类型为ListIntergert作为条件进行查询
Mybatis传入参数类型为List作为条件进行查询 higher2017关注 2017.02.07 10:23:16字数 130阅读 5,658 表结构: 表名称为constant 需求: 现在想查 ...
- MyBatis传入参数为0时条件不生效
当传入参数为 0 的时候,判断条件无效 <if test="sex != null and sex != '' ">and sex =#{sex } </if&g ...
最新文章
- IDEA中maven的命令及作用
- Android在eoe分享一篇推荐开发组件或者框架的文章
- python官网 中文版 新闻-用python看新闻
- archer mysql源码_自动化运维工具inception+archer
- ubuntu16.04设置静态IP
- java textfield 数字,如何将整数转换为文本以便在textfield java-blackberry中使用
- ABAP并发编程到底能提高多少性能
- 使用Docker,Chef和Amazon OpsWorks进行集群范围的Java / Scala应用程序部署
- springboot-添加拦截器
- 云海轻站V 1.0.17+智慧文章1.0.1插件(公众号同步官方最新版)
- phpeclipse+xdebug配置
- H5支付完整demo及问题总结【已解决】
- Leetcode每日一题:169.majority-element(多数元素)
- java canvas数组_java数组
- 为多个VLAN实现DCHP
- 《编译原理及实践教程》第一章学习笔记
- mysql 中用select建表_用 SELECT 的结果创建表
- 库克考虑卸任苹果 CEO,谁会是下一任接班人?
- raspberry 防火墙_用Raspberry Pi对您的家庭网络进行防火墙
- 纯CSS3实现的蓝天白云效果