CREATE TABLE `dept` (
`deptno` int(9) NOT NULL COMMENT '部门编号',
`dname` varchar(50) DEFAULT NULL COMMENT '部门名称',
`loc` varchar(50) DEFAULT NULL COMMENT '部门地址',
PRIMARY KEY (`deptno`)
)COMMENT='部门信息表';
insert into `dept`(`deptno`,`dname`,`loc`) values
(20,'RESEARCH','DALLAS'),
(30,'SALES','CHICAGO');
CREATE TABLE `emp` (
`empno` int(4) NOT NULL COMMENT '雇员编号',
`ename` varchar(10) DEFAULT NULL COMMENT '雇员名称',
`job` varchar(9) DEFAULT NULL COMMENT '雇员岗位',
`sal` float(7,2) DEFAULT NULL COMMENT '雇员工资',
`dno` int(2) COMMENT '部门编号',
PRIMARY KEY (`empno`)
)COMMENT='雇员表';
insert into `emp`(`empno`,`ename`,`job`,`sal`,`dno`) values
(7369,'SMITH','CLERK',800.00,20),
(7370,'SCOTT','MANAGER',900.00,20),
(7372,'LILY','CLERK',820.00,30),
(7373,'LUCY','CLERK',830.00,30);
--根据部门id查询部门信息及雇员信息
select d.*,e.* from dept d,emp e where d.deptno=20 and d.deptno=e.dno;
--根据雇员id查询雇员及部门信息
select d.*,e.* from dept d,emp e where e.empno=7370 and d.deptno=e.dno;
4.0.0
com.henu
mybatis03_onetomanyplus
1.0-SNAPSHOT
jar
org.mybatis
mybatis
3.4.5
mysql
mysql-connector-java
5.1.6
log4j
log4j
1.2.12
junit
junit
4.10
org.projectlombok
lombok
1.16.20
使用lombok进行简化开发 如果遇到问题可以前往下方网站
https://blog.csdn.net/qq_41946557/article/details/100768770
package com.henu.test;
import com.henu.bean.Dept;
import com.henu.bean.Emp;
import com.henu.dao.DeptDao;
import com.henu.dao.EmpDao;
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 org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
* @author George
* @description
**/
public class DaoTest {
InputStream is;
SqlSessionFactoryBuilder builder;
SqlSessionFactory factory;
SqlSession sqlSession;
@Before
public void init() throws IOException {
is = Resources.getResourceAsStream("SqlMapConfig.xml");
builder = new SqlSessionFactoryBuilder();
factory = builder.build(is);
sqlSession = factory.openSession();
}
@Test
public void findMessageByDeptno(){
DeptDao deptDao = sqlSession.getMapper(DeptDao.class);
List depts = deptDao.findMessageByDeptno(20);
for (Dept dept : depts) {
System.out.println(dept);
System.out.println(dept.getEmps());
}
}
@Test
public void findMessageByEmpno(){
EmpDao empDao = sqlSession.getMapper(EmpDao.class);
Emp emp = empDao.findMessageByEmpno(7370);
System.out.println(emp);
}
@After
public void close() throws IOException {
sqlSession.close();
is.close();
}
}