您当前的位置: 首页 >  mybatis

梁云亮

暂无认证

  • 1浏览

    0关注

    1211博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MyBatisPlus增删改查

梁云亮 发布时间:2020-04-20 14:23:05 ,浏览量:1

第一步:创建Maven项目

添加Maven依赖:


    junit
    junit
    4.12
    test



    org.projectlombok
    lombok
    1.18.10



    ch.qos.logback
    logback-classic
    1.2.3



    mysql
    mysql-connector-java
    8.0.13


    com.alibaba
    druid
    1.1.12



    org.mybatis
    mybatis-typehandlers-jsr310
    1.0.2


    com.baomidou
    mybatis-plus
    3.3.0


    com.baomidou
    mybatis-plus-core
    3.3.0


    com.baomidou
    mybatis-plus-extension
    3.3.0


    com.baomidou
    mybatis-plus-annotation
    3.3.0



    org.springframework
    spring-context
    5.2.1.RELEASE


    org.springframework
    spring-aop
    5.2.1.RELEASE


    org.springframework
    spring-jdbc
    5.2.1.RELEASE


    org.springframework
    spring-test
    5.2.1.RELEASE
    test

第二步:在resources目录下编写配置文件 log4j2.xml


    
    
        
        
            
            
            
            
        

        
        
            
            
        
    

    
    
        
        
            
            
        
    

mysql.properties
driverClass=com.mysql.cj.jdbc.Driver
connectionURL=jdbc:mysql://127.0.0.1/db_test?useSSL=false&serverTimezone=GMT&nullCatalogMeansCurrent=true
userId=root
password=root
mybatis-cfg.xml



    
        
        
        
        
        
        

           
        
    

    
    
        
    

    
    
        
        
            
        
    


mybatisplus.xml



    
    

    
    
        
        
        
        
        
        
    

    
    
        
            
                
                
                
                
                
                
            
        
    

    
    
        
        
        
        
        
        
        
    

    
    
    
        
        
        
        
    

    
    
        
    
    
    

spring.xml


    
    


第三步:创建实体类
@Getter
@Setter
@ToString
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "db_test.tb_emp")
public class Emp extends Model implements Serializable {  //继承Model类,是为了实现AR功能
    
    private static final long serialVersionUID = -1696472017703928733L;

    @TableId(value = "empno", type = IdType.INPUT)
    private Integer empno;

    @TableField(value = "ename")
    private String ename;

    @TableField(value = "job")
    private String job;

    @TableField(value = "mgr")
    private Integer mgr;

    @TableField(value = "hiredate")
    private LocalDate hiredate;

    @TableField(value = "sal")
    private BigDecimal sal;

    @TableField(value = "comm")
    private BigDecimal comm;

    @TableField(value = "deptno")
    private Integer deptno;

}
第四步:创建Dao文件
public interface EmpMapper extends BaseMapper {
}
第五步:创建映射文件



    
        
        
        
        
        
        
        
        
    

    
        empno, ename, job, mgr, hiredate, sal, comm, deptno
    

第六步:Mapper测试
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath:mybatisplus.xml"})
public class EmpDaoMapperTest {

    @Autowired
    private EmpMapper empMapper;

    @Test
    public void insert() {
        Emp emp = new Emp(1234, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        int insertRes = empMapper.insert(emp);
        System.out.println(insertRes);
        System.out.println(emp.getEmpno());//直接获取插入数据返回的自增主键值
    }

    @Test
    public void insert1() {
        Emp emp = new Emp(1234, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);
        emp = new Emp(1235, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);
        emp = new Emp(1236, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);
        emp = new Emp(1237, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);
        emp = new Emp(1238, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);
        emp = new Emp(1239, "zhangsan", "CLERK", 7788, LocalDate.of(1999, 9, 21), new BigDecimal(1200), new BigDecimal(300), 20);
        empMapper.insert(emp);

    }

    @Test
    public void update() {
        Emp emp = new Emp(1235, "张三", "SALES", 7698, LocalDate.of(2018, 9, 21), new BigDecimal(1300), new BigDecimal(400), 20);
        int updateRes = empMapper.updateById(emp);
        System.out.println(updateRes);
    }


    @Test
    public void delete1() {
        int deleteRes = empMapper.deleteById(1235);
        System.out.println(deleteRes);
    }

    @Test
    public void delete2() {
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("ename", "张三");
        int deleteRes = empMapper.delete(queryWrapper);
        System.out.println(deleteRes);
    }

    @Test
    public void delete3() {
        int deleteRes = empMapper.deleteBatchIds(Arrays.asList(1236, 1237));
        System.out.println(deleteRes);
    }

    @Test
    public void delete4() {
        Map map = new HashMap();
        map.put("ename", "zhangsan");
        int deleteRes = empMapper.deleteByMap(map);
        System.out.println(deleteRes);
    }

    @Test
    public void select1() {
        Emp emp = empMapper.selectById(7788);
        System.out.println(emp);
    }

    @Test
    public void select2() {
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("ename", "scott");
        queryWrapper.eq("deptno", "20");
        Emp emp = empMapper.selectOne(queryWrapper);
        System.out.println(emp);
    }

    @Test
    public void select3() {
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.like("ename", "%AR%");
        List empList = empMapper.selectList(queryWrapper);
        for (Emp emp : empList) {
            System.out.println(emp);
        }
    }

    @Test
    public void select4() {
        List empList = empMapper.selectBatchIds(Arrays.asList(7369, 7782, 7844));
        for (Emp emp : empList) {
            System.out.println(emp);
        }
    }

    @Test
    public void select5() {
        Map map = new HashMap();
        map.put("ename", "zhangsan");
        map.put("job", "clerk");
        List empList = empMapper.selectByMap(map);
        for (Emp emp : empList) {
            System.out.println(emp);
        }
    }

    @Test
    public void select6() {
        IPage empPage = empMapper.selectPage(new Page(2, 2), null);
        for (Emp emp : empPage.getRecords()) {
            System.out.println(emp);
        }
    }

    @Test
    public void select7() {
        Wrapper queryWrapper = new QueryWrapper()
                .between("sal", 1500, 3500)
                .like("ename", "%A%");
        IPage empPage = empMapper.selectPage(new Page(1, 3), queryWrapper);
        for (Emp emp : empPage.getRecords()) {
            System.out.println(emp);
        }
    }
    
}
第七步:AR测试
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath:mybatisplus.xml"})
public class EmpDaoARTest {

    @Test
    public void insert(){
        Emp emp = new Emp(1230,"zhangsan","CLERK",7788, LocalDate.of(1999,9,21),new BigDecimal(1200),new BigDecimal(300),20);
        boolean insertRes = emp.insert( );
        System.out.println(insertRes);
        System.out.println(emp.getEmpno());//直接获取插入数据返回的自增主键值
    }

    @Test
    public void update(){
        Emp emp = new Emp(1230,"张三","SALES",7521, LocalDate.of(2018,9,21),new BigDecimal(1400),new BigDecimal(400),10);
        boolean updateRes = emp.updateById();
        System.out.println(updateRes);
    }

    @Test
    public void delete1(){
        Emp emp = new Emp();
        boolean deleteRes1 = emp.deleteById(1230);
        System.out.println(deleteRes1);

        emp.setEmpno(1234);
        boolean deleteRes2 = emp.deleteById();
        System.out.println(deleteRes2);
    }

    @Test
    public void delete2(){
        Emp emp = new Emp();
        QueryWrapper queryWrapper =new QueryWrapper();
        queryWrapper.ge("empno",7902);
        boolean res = emp.delete(queryWrapper);
        System.out.println(res);
    }


    @Test
    public void select1(){
        Emp emp = new Emp();
        Emp emp1 = emp.selectById(7788);
        System.out.println(emp1);

        emp.setEmpno(7788);
        Emp emp2 = emp.selectById();
        System.out.println(emp2);
    }

    @Test
    public void select2(){
        List empList = new Emp().selectAll();
        for (Emp item : empList) {
            System.out.println(item);
        }
    }

    @Test
    public void select3(){
        QueryWrapper queryWrapper = new QueryWrapper().like("ename","%SCOTT%");
        Emp emp = new Emp();
        List empList = emp.selectList(queryWrapper);
        for (Emp item : empList) {
            System.out.println(item);
        }
        Integer count = emp.selectCount(queryWrapper);//参数值为null时表示查看全表
        System.out.println(count);
    }

    @Test
    public void select4(){
        Wrapper queryWrapper = new QueryWrapper().lt("sal",1500);
        IPage empPage = new Emp().selectPage(new Page(2, 2), queryWrapper);
        for (Emp emp :empPage.getRecords()){
            System.out.println(emp);
        }
        System.out.println(empPage.getTotal());
        System.out.println(empPage.getCurrent());
        System.out.println(empPage.getPages());
        System.out.println(empPage.getSize());
        System.out.println(empPage.offset());
    }

}
关注
打赏
1665409997
查看更多评论
立即登录/注册

微信扫码登录

0.0510s