mybatis从入门到精通,第一篇《入门基本搭建》,干货满满

Mybatis是一款优秀的高轻量级、半自动的ORM(对象关系映射)持久层框架 , 它更加关注原生JDBC的SQL实现 , 实际开发过程中可以将SQL语句和Java代码进行很好的解耦 。 它支持定制化 SQL、存储过程以及高级映射 , 它还提供强大的动态SQL,所以深受广大程序员的青睐 。
mybatis从入门到精通,第一篇《入门基本搭建》,干货满满文章插图
基本脚手架结构图
第①项配置:pom.xml加入依赖mysqlmysql-connector-java5.1.46org.mybatismybatis3.4.6第②项配置:核心mybatis.xml【mybatis从入门到精通,第一篇《入门基本搭建》,干货满满】第③项配置:编写pojo实体
public class Emp {//实体名称一般对应数据库表名 private int empno; //雇员编号 private String ename; //雇员名称 private String job; //雇员工作 private int mgr; //雇员上级领导编号 private Date hiredate; //雇佣日期 private BigDecimal sal; //雇员薪资 private BigDecimal comm; //雇员奖金 private int deptno; //部门编号 public int getEmpno() {return empno; } public void setEmpno(int 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 int getMgr() {return mgr; } public void setMgr(int mgr) {this.mgr = mgr; } public Date getHiredate() {return hiredate; } public void setHiredate(Date hiredate) {this.hiredate = hiredate; } public BigDecimal getSal() {return sal; } public void setSal(BigDecimal sal) {this.sal = sal; } public BigDecimal getComm() {return comm; } public void setComm(BigDecimal comm) {this.comm = comm; } public int getDeptno() {return deptno; } public void setDeptno(int deptno) {this.deptno = deptno; }}第④项配置:准备EmpMapper接口类 , 编写CRUD方法//方法名称和EmpMapper.xml中id保持一致public interface EmpMapper {/*** 查询所有雇员信息* @return*/List queryEmpList();/*** 添加雇员信息* @param emp* @return*/int addEmp(Emp emp);/*** 根据条件删除雇员信息* @param empno* @return*/int delEmp(int empno);/*** 更新雇员信息* @param emp* @return*/int updateEmp(Emp emp);}第⑤项配置:数据库映射EmpMapper.xmlselect * from emp;insert into emp(empno,ename) values(#{empno},#{ename});delete from emp where empno = #{empno};update emp set ename = #{ename} where empno=#{empno};
mybatis从入门到精通,第一篇《入门基本搭建》,干货满满文章插图
第⑥项配置:测试mybatis的CRUD方法public class MybatisTest {SqlSessionFactory sqlSessionFactory;SqlSession sqlSession;@Before //加载mybatis.xml配置文件 , 获取sqlSession会话public void before() throws IOException {//调用test方法前都会首先执行此方法String resource = "mybatis.xml";//读取项目中的mybatis.xml文件InputStream inputStream = Resources.getResourceAsStream(resource);//创建一个SqlSessionFactory的工厂类sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);//创建SqlSession会话sqlSession= sqlSessionFactory.openSession(true); //默认为手动提交false,自动提交true 。}@Testpublic void testQueryEmpList(){//测试查询EmpMapper empMapper = sqlSession.getMapper(EmpMapper.class);List