`
lilylovezhuzi
  • 浏览: 17981 次
  • 性别: Icon_minigender_2
  • 来自: 南京
社区版块
存档分类
最新评论

mybatis入门(三)---ResultMap

阅读更多

下面将介绍一个resultMap最基本的用法-----一对一/has a 关系

 

承接上篇文章

 

1.新建表t_dept,并修改表t_user.建表语句如下

create table t_dept (deptno varchar2(11),deptname varchar2(22));
alter table t_dept add constraints pk_deptno primary key(deptno);
alter table t_user add(deptno varchar2(11));
insert into t_dept values('1111','dept1');
update t_user set deptno = '1111'; 

 2.添加实体类Dept.java

package com.mybatis.test.vo;
public class Dept {
	private String deptNo;
	private String deptName;
	public Dept() {
		super();
	}
	public String getDeptNo() {
		return deptNo;
	}
	public void setDeptNo(String deptNo) {
		this.deptNo = deptNo;
	}
	public String getDeptName() {
		return deptName;
	}
	public void setDeptName(String deptName) {
		this.deptName = deptName;
	}
	
	public String toString()
	{
		return " deptNo is: "+deptNo+" deptName is: "+deptName;
	}
}

 3.修改User.java

    在User类中添加对象Dept dept;

 4 修改User.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="User">
	<resultMap type="User" id="userResult">
		<id property="id" column="user_id" />
		<result property="userName" column="user_name" />
		<association property="dept" column="user_dept_no"
			javaType="Dept">
			<id property="deptNo" column="dept_no" />
			<result property="deptName" column="dept_name" />
		</association>
	</resultMap>
	<select id="select1" parameterType="int" resultMap="userResult">
		select u.id
		as user_id,
		u.username as user_name,
		u.deptno as user_dept_no,
		d.deptno
		as dept_no,
		d.deptname as dept_name
		from t_user u,t_dept d
		where u.deptno
		= d.deptno
		and u.id = #{id}
    </select>
</mapper>

 上述配置文件中resultMap中使用了<association>标签来实现关联。

5.在UserDAO类中加入以下方法:

public User getUserAndDept(int id)
	{
		SqlSession session = sqlSessionFactory.openSession();
		try {
			User user = (User) session.selectOne("User.select1", id);
			return user;
		} finally {
			session.close();
		}
	}

 6.在test中进行测试。

 

 
分享到:
评论

相关推荐

    MyBatis-3-User-Guide用户手册(中文英文)

    什么是 MyBatis?\ 5 入门\ 5 从 XML 中构建 SqlSessionFactory \ 5 不使用 XML 构建 SqlSessionFactory\ 6 从 SqlSessionFactory 中获取 SqlSession\ 6 探究已映射的 SQL语句 \ 7 命名空间的一点注释 \ 8 ...

    Mybatis入门到精通

    Mybatis介绍、单独使用jdbc编程问题总结、Mybatis架构、Mybatis入门程序、Mybatis开发Dao、SqlMapConfig.xml配置、ParameterType输入映射、ResultType及ResultMap输出映射、动态sql、商品订单数据模型、关联查询(一...

    mybatis入门demo

    mybatis入门demo resultMap |OR "&gt; !=null"&gt;username=#{userName},&lt;/if&gt;

    springmybatis

    mybatis实战教程mybatis in action之三实现数据的增删改查 mybatis实战教程mybatis in action之四实现关联数据的查询 mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之...

    mybatis学习笔记

    1 Mybatis入门 1 1.1 单独使用jdbc编程问题总结 1 1.1.1 jdbc程序 1 1.1.2 jdbc编程步骤: 2 1.1.3 jdbc问题总结如下: 3 1.2 MyBatis介绍 3 1.3 Mybatis架构 3 1.4 mybatis下载 4 1.5 创建mysql数据库 5 1.6 ...

    MyBatis入门到精通项目实战精品课程(附项目源代码)

    MyBatis是Java开发中重要的实体层技术,课程通过实战项目全面完整讲解各种技术的使用技巧,掌握MyBatis基本配置,增删改查,注解,resultMap,一对一,一对多等各种复杂配置,掌握if,choose,where,set,foreach,分页...

    MyBatis中文指南,MyBatis中文帮助文档

    什么是MyBatis?............................................................................................................. 5 入门........................................................................

    Java学习指南21 MyBatis框架

    一、课程简介  『Java学习指南系列』的第21篇教程 ,MyBatis 篇...〖Java学习指南系列〗:包含入门与进阶语法,Swing桌面开发,安卓开发,JavaFX开发,网络通信Socket,数据结构与算法等课程。 〖网站开发系列〗:包

    mybatis3中文文档

    什么是MyBatis?............................................................................................................. 5 入门........................................................................

    SSM入门到精通项目实战(附源码)

    之parameters和@Param注解,MyBatis映射文件的resultMap的使用,MyBatis映射之association(一对一)配置与使用,MyBatis映射之collection(一对多)配置与使用,MyBatis映射之association与collection的复杂使用...

Global site tag (gtag.js) - Google Analytics