Mybatis getMapper查询方式

Mybatis getMapper查询方式


1、实体类映射文件 Users.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">
<!-- namespace为接口包名+接口名称 -->
<mapper namespace="cn.sz.hcq.dao.IEmpDAO">
	<!-- 
		1.sql语句的id,必须与接口中定义的方法的名字一致
		2.实体映射文件的namespace,必须写成  包.接口  的名字(否则会到不到sql)
		3.不用写DAO的实现类,而是通过接口和反射的方式,来得到接口类型的对象,并通过这个对象来调用方法,以此实现持久化操作
	 -->
	<select id="findallemp" resultType="cn.sz.hcq.pojo.Emp">
		select
		empno,ename,job,mgr,hiredate,sal,comm,deptno from emp
	</select>
</mapper>


2、实体类Users.java

package cn.sz.hcq.pojo;

import java.io.Serializable;
import java.util.Date;

public class Emp implements Serializable {
	private Integer empno;
	private String ename;
	private String job;
	private Integer mgr;
	private Date hiredate;
	private Double sal;
	private Double comm;
	private Integer deptno;

	public Integer getEmpno() {
		return empno;
	}

	public void setEmpno(Integer empno) {
		this.empno = empno;
	}

	public String getEname() {
		return ename;
	}

	public void setEname(String ename) {
		this.ename = ename;
	}

	public String getJob() {
		return job;
	}

	public void setJob(String job) {
		this.job = job;
	}

	public Integer getMgr() {
		return mgr;
	}

	public void setMgr(Integer mgr) {
		this.mgr = mgr;
	}

	public Date getHiredate() {
		return hiredate;
	}

	public void setHiredate(Date hiredate) {
		this.hiredate = hiredate;
	}

	public Double getSal() {
		return sal;
	}

	public void setSal(Double sal) {
		this.sal = sal;
	}

	public Double getComm() {
		return comm;
	}

	public void setComm(Double comm) {
		this.comm = comm;
	}

	public Integer getDeptno() {
		return deptno;
	}

	public void setDeptno(Integer deptno) {
		this.deptno = deptno;
	}

}

3、测试查询代码

package cn.sz.hcq.test;

import java.io.Reader;
import java.util.List;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import cn.sz.hcq.dao.IEmpDAO;
import cn.sz.hcq.pojo.Emp;

public class Test {
	public static void main(String[] args) {
		String resource = "mybatis_cfg.xml";// 配置文件的名字

		Reader reader = null;
		SqlSessionFactoryBuilder builder = null;
		SqlSessionFactory factory = null;
		SqlSession sqlSession = null;

		try {
			// 这里使用字符流,以流的形式来读取mybatis配置文件的内容
			reader = Resources.getResourceAsReader(resource);
			// 准备构建连接工厂的工具
			builder = new SqlSessionFactoryBuilder();
			// 准备连接工厂
			factory = builder.build(reader);
			// 获取连接
			sqlSession = factory.openSession();

			// 操作
			// getMapper来获取实现类对象,如何调用其方法
			IEmpDAO empdao = sqlSession.getMapper(IEmpDAO.class);
			List<Emp> emplist = empdao.findallemp();

			for (int i = 0; i < emplist.size(); i++) {
				Emp emp = emplist.get(i);
				System.out.println(emp.getEmpno() + "," + emp.getEname() + ","
						+ emp.getJob() + "," + emp.getSal());
			}

		} catch (Exception e) {
			e.printStackTrace();
			// sqlSession.rollback();
		} finally {
			// 关闭连接
			if (sqlSession != null) {
				sqlSession.close();
			}
		}
	}
}


通过getMapper来获取实现类对象,如何调用方法查询
IEmpDAO empdao = sqlSession.getMapper(IEmpDAO.class);
List<Emp> emplist = empdao.findallemp();


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值