springboot 通用mapper zsgc案例 ------R

    xiaoxiao2022-07-06  220

    1.TKmybatis框架使用: 是基于Mybatis的一个框架,框架的核心思想就是对于Mapper的封装。减少传统的Mapper编写 mybatis的逆向工程中会生成实例及实例对应的example,example用于添加条件,相当where后面的部分 2.各种查询:

    //service 实现类 @Override public List<TVarBasic> getByName(Map<String, Object> query) { log.info("进入service : name 为: " + query.get("name")); //mybatis的逆向工程中会生成实例及实例对应的example,example用于添加条件,相当where后面的部分 Example example = new Example(TVarBasic.class); //条件查询(单条件 多条件 实体类的字段) // example.createCriteria().andEqualTo("varName",query.get("name")).andEqualTo("status",query.get("status")); //按字段排序(数据库的字段 ASC/DESC) //example.setOrderByClause("create_time DESC"); //添加xxx字段大于value条件 andLessThan()为小于 //example.createCriteria().andGreaterThan("id",4); //指定字段模糊查询 // example.createCriteria().andLike("varName","%"+"SPEC"+"%"); List<TVarBasic> basic = tVarBasicMapper.selectByExample(example); return basic; }

    3.查询总条数 :

    @Override public int getCount() { //查询数据总条数 Example example = new Example(TVarBasic.class); int count = tVarBasicMapper.selectCountByExample(example); return count; }

    4.修改:

    @Override public int updateBa(TVarBasic basic) { Example example = new Example(TVarBasic.class); //按id和修改时间修改 加上修改时间作为条件是防止有脏数据 example.createCriteria().andEqualTo("id",basic.getId()).andEqualTo("updateTime",basic.getUpdateTime()); //插入当前的时间 basic.setUpdateTime(new Date()); int update = tVarBasicMapper.updateByExampleSelective(basic,example); return update; }

    5.新增即使在事务中(未提交)也会拿到新增id

    最新回复(0)