mybatis 输入映射和输出映射

开发步骤:

1)映射文件UserMapper,xml中进行配置

2)接口UserMapper中增加方法

3)测试

输入映射:

需求一.:输入包装类型 UserQueryVo中定义Customer类 Customer继承User类

UserQueryVo

<span style="font-family:Courier New;font-size:14px;">public class UserQueryVo {
	private Customer customer;
	public void setCustomer(Customer customer) {
		this.customer = customer;
	}
	public Customer getCustomer() {
		return customer;
	}
}
</span>

Customer类继承User类

<span style="font-family:Courier New;font-size:14px;">public class Customer extends User{

}</span>

UserMapper.xml中的配置

<span style="font-family:Courier New;font-size:14px;"><!-- 包装类型的 -->
	<select id="findAllUsersList" parameterType="cn.itcast.domain.UserQueryVo" resultType="cn.itcast.domain.Customer">
		select * from user  where user.sex=#{customer.sex} and user.username like "%${customer.username}%"

	</select></span>

这里的输入类型是包装类型 输出的是Customer类型

UserMapper接口中定义方法

<span style="font-family:Courier New;font-size:14px;">public List<Customer> findAllUsersList(UserQueryVo userQueryVo);</span>

输出映射:

需求: 查出数据库user表中的总记录数

UserMapper.xml中的配置

<span style="font-family:Courier New;font-size:14px;"><select id="findUserCount" resultType="int">
		select count(*)  from user
	</select></span>

输入类型没有 输出类型是int

UserMapper接口中定义方法

<span style="font-family:Courier New;font-size:14px;">public int findUserCount();</span>

需求:如果查询语句中使用别名!

<!-- 输出类型 -->
	<resultMap type="user" id="userId">
		<id column="id_" property="id"/>
		<result column="username_" property="username"/>
	</resultMap>
	<select id="findUserResultType" parameterType="int" resultMap="userId">
		select id id_,username username_ from user where id =#{id}
	</select>

输入类型是int 输出类型是引用的别名类型这个时候使用resultMap

UserMapper接口中定义方法

public  User findUserResultType(int id);

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-06 08:15:11

mybatis 输入映射和输出映射的相关文章

MyBatis入门(二)—— 输入映射和输出映射、动态sql、关联查询

p.p4 { margin: 0.0px 0.0px 0.0px 10.0px; font: 10.5px "PingFang SC" } p.p6 { margin: 0.0px 0.0px 0.0px 21.0px; font: 10.0px "Courier New"; color: #4f76cb } p.p7 { margin: 0.0px 0.0px 0.0px 21.0px; font: 10.0px "Courier New" }

mybatis入门基础(四)----输入映射和输出映射

阅读目录 一:输入映射 二:输出映射 回到顶部 一:输入映射 通过parameterType指定输入参数的类型,类型可以是简单类型.hashmap.pojo的包装类型. 1.1.传递pojo的包装对象 1.1.1.需求描述 完成用户信息的综合查询,需要传入的查询条件可能很复杂(可能包括用户信息,其它信息,比如,商品,订单等等). 1.1.2.定义包装类型的pojo 针对上边的需求,建议使用自定义的包装类型pojo,在包装类型的pojo中将复杂的查询条件包装进去. 包装查询条件的pojo类User

Mybatis学习(4)输入映射、输出映射、动态sql

一.输入映射: 通过parameterType指定输入参数的类型,类型可以是简单类型.hashmap.pojo的包装类型 1) 传递pojo的包装对象 需求是:完成用户信息的综合查询,传入的查询条件复杂:(包括用户信息.其他信息等); 定义包装类型: 用户扩展类: package com.cy.po; /** *用户的扩展类 * @author chengyu * */ public class UserCustom extends User{ } 视图层面的用户包装类型: 1 package

Spring+SpringMVC+MyBatis深入学习及搭建(四)——MyBatis输入映射与输出映射(转发同上)

原地址:http://www.cnblogs.com/shanheyongmu/p/7121556.html 1. 输入映射 通过parameterType指定输入参数的类型,类型可以是简单类型.hashmap.pojo的包装类型. 1.1 #{}与${} #{}实现的是向prepareStatement中的预处理语句设置参数值,sql语句中#{}表示一个占位符即? <select id="findUserById" parameterType="int" r

Mybatis_7输入映射和输出映射

1.输入映射: 1)   :传递简单类型如int,string已在之前的程序写到 2):传递pojo对象,也已经在前面的程序中写到 3):传递pojo包装对象,没有写过. 开发中可以通过使用pojo传递查询条件.查询条件可能是综合的查询条件,不仅包括用户的查询条件,还包括其他的查询条件. 根据用户名称模糊查询用户,查询条件放到QueryVo的user属性中. 测试类: 1 @Test 2 void testQueryVo() throws Exception { 3 // 加载核心配置文件 4

MyBatis总结之输入和输出映射

我们知道mybatis中输入映射和输出映射可以是基本数据类型.hashmap或者pojo的包装类型,这里主要来总结一下pojo包装类型的使用,因为这个在开发中比较常用. 1. 输入映射 输入映射,是在映射文件中通过parameterType指定输入参数的类型,类型可以是简单类型.hashmap.pojo的包装类型.假设现在有个比较复杂的查询需求:完成用户信息的综合查询,需要传入查询条件很复杂(可能包括用户信息.其它信息,比如商品.订单的),那么我们单纯的传入一个User就不行了,所以首先我们得根

mybatis 输入、输出映射

一.输入映射 mapper.xml的参数只有一个.可以传参数,基本简单类型,hashmap和javabean (一).Javabean的方法. 需求:通过小说名和作者模糊找书. 1.定义Javabean class  NovelCustom  extends Novel 继承了Novel.一个可以通过什么属性来查询.二.可以在里面加属性.如加上章节名来查询.(表tb_chacter和类Chacter,表中tb_novel_id外键), 或者,将Novel注入到NovelCustom.//priv

【Mybatis框架】输出映射-resultType与resultMap

输出映射接下来说说有关Mapper.xml配置文件中查询标签中关于返回值类型resultType与resultMap的一些内容 1.resultType使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功.如果查询出来的列名和pojo中的属性名全部不一致,没有创建pojo对象.只要查询出来的列名和pojo中的属性有一个一致,就会创建pojo对象. 1.1输出简单类型1.1.1需求用户信息的综合查询列表总数,通过查询总数和上边用户综合查询列表才可以实

Mybatis中输出映射resultType与resultMap的区别

(原文地址:http://blog.csdn.net/acmman/article/details/46509375) 1.resultType 使用resultType进行输出映射,只有查询出来的列名和pojo(实体bean)中的属性名一致,该列才可以映射成功. 如果查询出来的列名和pojo中的属性名全部不一致,没有创建pojo对象.只要查询出来的列名和pojo中的属性有一个一致,就会创建pojo对象. 1.1输出pojo对象和pojo列表 不管是输出的pojo单个对象还是一个列表(list中