标签: 实体类

  • Flutter实现讯飞在线语音合成(WebSocket流式版)

    Flutter实现讯飞在线语音合成(WebSocket流式版)

    持续创作,加速成长!这是我参与「日新计划 6 月更文挑战」的第2天,点击查看活动详情。

    (更多…)

  • Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    四、MPG 的 IService 接口

    MPG代码生成器生成的服务接口继承MP的iService接口。除了基本的额外删除外,该界面还包含批处理操作方法,该方法定义了def页面预览如何关闭ault方法,以测试手机是否被监控及service entity类图Impl页面预览如何关闭类。

    public in分页符和分节符的区别terface itesla service extends iservice Tesla {

    }

    IService 接口的 save 相关方法

    //插入记录(选择字段,插入策略),直接调用的BaseMapper的insert()方法

    Default boolean save(T entity) {

    //插入测试工程师(布局)

    default boolean savemybatis面试题 batch(collection t entity list)

    //插入(布局)

    boolean save batch(collection t entity list,int batch size);

    //插入批量修改

    def测试英文ault boolean saveorupdatebatch(collection t ent实体类型ity list){

    //插入批量修改

    boolean saveorupdatebatch(collectio测试抑郁症的20道题n t entity list,int batch size);

    在ITeslaServiceTes中

    t测试类中增加相应的测试方法

    @Test
    public void saveBatch(){
        List<Tesla> teslaList = new ArrayList<>();
        for (int i = 0; i < 5; i++) {
            Tesla tesla = new Tesla();
            tesla.setName("Cyber Truck 202" + i);
            tesla.setFactory("得克萨斯州特斯拉超级工厂");
            tesla.setVehicleType("皮卡");
            tesla.setPrice(300000.00 + 1000 * i);
            teslaList.add(tesla);
        }
        boolean b = teslaService.saveBatch(teslaList);
        System.out.println("是否保存成功:" + b);
    }
    

    执行该测试方法

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    保存成功,控制台只执行了一次SQL将数据全部保存到表中

    @Test
    public void saveBatchByBatchSize(){
        List<Tesla> teslaList = new ArrayList<>();
        for (int i = 0; i < 5; i++) {
            Tesla tesla = new Tesla();
            tesla.setName("Cyber Truck 202" + i);
            tesla.setFactory("上海特斯拉超级工厂");
            tesla.setVehicleType("皮卡");
            tesla.setPrice(300000.00 + 1000 * i);
            teslaList.add(tesla);
        }
        boolean b = teslaService.saveBatch(teslaList, 2);
        System.out.println("是否保存成功:" + b);
    }
    

    执行该测试方法

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    批量分页符怎么取消掉保存时设置mybatis注解类batchSize,测试仪既每次执行批量插入时只插mybatis面试题入两条分页预览怎么重新分页数据,因此控制台执行了3次SQ分页符怎么删除L语句

    @Test
    public void saveOrUpdateBatch(){
        List<Tesla> updateList = new ArrayList<>();
        for (int i = 1166057549; i < 1166057551; i++) {
            Tesla tesla = new Tesla();
            tesla.setId(i);
            tesla.setName("Semi Truck 202" + i);
            tesla.setFactory("弗拉蒙特特斯拉超级工厂");
            updateList.add(tesla);
        }
        List<Tesla> saveList =  new ArrayList<>();
        for (int i = 0; i < 2; i++) {
            Tesla tesla = new Tesla();
            tesla.setName("Semi Truck 202" + i);
            tesla.setFactory("柏林特斯拉超级工厂");
            saveList.add(tesla);
        }
        List<Tesla> saveOrUpdateList = new ArrayList<>();
        saveOrUpdateList.addAll(updateList);
        saveOrUpdateList.addAll(saveList);
        boolean b = teslaService.saveOrUpdateBatch(saveOrUpdateList);
        System.out.println("是否更新或者保存成功:" + b);
    }
    

    执行该测试方法

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    对于设置了i特斯拉yd的对象会限制性测试抑郁程度的问卷SELECT语句再执行UPDA特斯拉汽车TE语句,并且只会更新给出的字段分页符怎么删除,对于没有设置id的对象会执行INSE分页符怎么加入RT语句

    IService 接口的 remove 相关方法

    // 根据 ID 删除, 直接调用BaseMapper的deleteById()方法
    default boolean removeById(Serializable id)
    // 根据 columnMap 条件,删除记录,直接调用BaseMapper的deleteByMap()方法
    default boolean removeByMap(Map<String, Object> columnMap) 
    // 根据 entity 条件,删除记录,直接调用BaseMapper的remove()方法
    default boolean remove(Wrapper<T> queryWrapper)
    // 删除(根据ID 批量删除)
    default boolean removeByIds(Collection<?> list) 
    // 批量删除(jdbc批量提交)
    default boolean removeBatchByIds(Collection<?> list)
    // 批量删除(jdbc批量提交)
    default boolean removeBatchByIds(Collection<?> list, int batchSize)
    

    在ITeslaServimybatis中$和井号区别ceTest特斯拉实体类的作用汽车测试类中增加remove的测试方法

    @Test
    public void removeByMap(){
        Map<String, Object> map = new HashMap<>();
        map.put("id", 1166057551);
        map.put("name", "Cyber Truck 2029");
        boolean b = teslaService.removeByMap(map);
        System.out.println("是否删除成功:" + b);
    }
    

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    根据Ma测试英文p组成删除的Where子句执行删除操作

    @Test
    public void removeByIds(){
        List<Integer> idList = new ArrayList<>();
        idList.add(1166057563);
        idList.add(1166057562);
        idList.add(1166057561);
        boolean b = teslaService.removeByIds(idList);
        System.out.println("是否批量删除成功:" + b);
    }
    

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    批量删除成功

    @Test
    public void removeBatchByIds(){
        List<Integer> idList = new ArrayList<>();
        idList.add(1166057560);
        idList.add(1166057559);
        idList.add(1166057558);
        boolean b = teslaService.removeBatchByIds(idList);
        System.out.println("是否批量删除成功:" + b);
    }
    

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)
    与rem实体类是什么oveByIds()方法所调用删除语句不同

    IS特斯mybatis注解拉车标ervice 接口的 update 相关方法

    ///根据 ID 选择修改,直接调用BaseMapper的updateById()方法
    default boolean updateById(T entity);
    // 根据 whereEntity 条件,更新记录,直接调用BaseMapper的update()方法,传入实体类
    default boolean update(T entity, Wrapper<T> updateWrapper);
    // 根据ID 批量更新
    default boolean updateBatchById(Collection<T> entityList);
    // TableId 注解存在更新记录,否插入一条记录
    boolean saveOrUpdate(T entity);
    

    在ITeslaServiceTest测试类中增加update的测试方法

    @Test
    public void updateBatchById(){
        List<Tesla> updateList = new ArrayList<>();
        for (int i = 1166057556; i < 1166057560; i++) {
            Tesla tesla = new Tesla();
            tesla.setId(i);
            tesla.setFactory("柏林特斯拉超级工厂");
            updateList.add(tesla);
        }
        boolean b = teslaService.updateBatchById(updateList);
        System.out.println("是否更新成功:" + b);
    }
    

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    @Test
    public void saveOrUpdate(){
        Tesla tesla = new Tesla();
        tesla.setName("Model S");
        tesla.setFactory("得克萨斯州特斯拉超级工厂");
        tesla.setPrice(880000.00);
        boolean b = teslaService.saveOrUpdate(tesla);
        System.out.println("保存或者更新成功:" + b);
    }
    

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    五、自定义 MPG 中的代码模板

    MPG 根MyBatis据模板生成 servmybatis分页插件实现原理ice 和 controller 代码, MPG的代码模板在测试工程师 gene测试手机是否被监控rator包下的templates文测试英文件夹下

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    默认提供的模板只能够生成XxxController类,并不特斯拉汽车价格表包含任何方法,如果需要在XxxContmybatis一级缓存和二级缓存roller类中生成增测试抑郁程度的问卷删改查方法就需要自定义cont分页实体类型符怎么删除roller模板。分页符

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    使用 Spring 全家桶之 Spring Boot 2.6.4(四)- Data Acces实体类的定义s(Part D My实体类图Ba特斯拉老板tis Pl分页符怎么取消掉us) 中的 spring-boot-mybatisplus项目,将controllemybatis工作原理r代码模板拷贝至自己项目中的tem分页打印怎么设置plates文件夹下,项目分页符怎么加入中使用测试你的自卑程度的是freemarker模测试你的自卑程度板引擎,所以拷贝ftl结尾的controller模板

    在amybatis分页插件实现原理pplicationmybatis动态sql.yml中增加测试freemarker模板引擎的配置

    spring:
      freemarker:
        template-loader-path: classpath:/resources/templates
        suffix: .ftl
    
    package ${package.Controller};
    import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
    import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
    import org.springframework.web.bind.annotation.RequestMapping;
    import javax.annotation.Resource;
    import java.util.List;
    import org.springframework.web.bind.annotation.RestController;
    import ${package.Entity}.${entity};
    /**
     * @author ${author}
     * @since ${date}
     */
    @RestController
    @RequestMapping("/${table.entityPath}")
    public class ${table.controllerName} {
         @Resource
         private ${table.serviceName} ${table.entityPath}Service;
         // 查询列表
         @GetMapping
         public List<${entity}> list(){
             return ${table.entityPath}Service.list();
         }
         // 根据id查询
         @GetMapping("/{id}")
         public ${entity} findOne(@PathVariable("id") Integer id){
             return ${table.entityPath}Service.getById(id);
         }
         // 更新或保存
         @PostMapping
         public Boolean save(@RequestBody ${entity} ${table.entityPath}){
             return ${table.entityPath}Service.saveOrUpdate(${table.entityPath});
         }
         // 根据id删除
         @DeleteMapping("/{id}")
         public Boolean removeById(@PathVariable("id") Integer id){
             return ${table.entityPath}Service.removeById(id);
         }
         // 查询总记录数
         @GetMapping("/count")
         public Long count(){
             return ${table.entityPath}Service.count();
         }
         // 批量删除
         @PostMapping("/delete")
         public Boolean batchDelete(@RequestBody List<Integer> ids){
             return ${table.entityPath}Service.removeBatchByIds(ids);
         }
         // 批量更新或者保存
         @PostMapping("/batch")
         public Boolean saveOrUpdateBatch(List<${entity}> ${table.entityPath}List){
             return ${table.entityPath}Service.saveOrUpdateBatch(${table.entityPath}List);
         }
         // 分页查询
         @GetMapping("/page")
         public Page<${entity}> findPage(@RequestParam("pageNum") Integer pageNum,
                                         @RequestParam("pageSize") Integer pageSize){
             Page<${entity}> page = new Page<>(pageNum, pageSize);
             QueryWrapper<${entity}> queryWrapper = new QueryWrapper<>();
             userService.page(page, queryWrapper);
             return page;
         }
    }
    

    代码模板中

    • ${entity}:实体类类名,如Umybatis一级缓存和二级缓存ser
    • ${table.entityPath}:实体类类名小写,us特斯拉er
    • ${table.servic特斯拉价格eName}:Service接口名,IUserService
    • ${table.co特斯拉ntro分页符怎么加入llerN特斯拉yame}特斯拉y:Controll特斯拉汽车er类类名,UserControll特斯拉股票er

    将mybatis-plus-mpg中的代码生mybatis框架成器G测试你适合学心理学吗eneratorApp拷贝至spring-bo实体类的作用ot-mybatisplus的test目录下,运行代码生成器

    @RestController
    @RequestMapping("/user")
    public class UserController {
        @Resource
        private IUserService userService;
        // 查询列表
        @GetMapping
        public List<User> list(){
        return userService.list();
        }
        // 根据id查询
        @GetMapping("/{id}")
        public User findOne(@PathVariable("id") Integer id){
            return userService.getById(id);
        }
        // 更新或保存
        @PostMapping
        public Boolean save(@RequestBody User user){
            return userService.saveOrUpdate(user);
        }
        // 根据id删除
        @DeleteMapping("/{id}")
        public Boolean removeById(@PathVariable("id") Integer id){
            return userService.removeById(id);
        }
        // 查询总记录数
        @GetMapping("/count")
        public Long count(){
            return userService.count();
        }
        // 批量删除
        @PostMapping("/delete")
        public Boolean batchDelete(@RequestBody List<Integer> ids){
            return userService.removeBatchByIds(ids);
        }
        // 批量更新或者保存
        @PostMapping("/batch")
        public Boolean saveOrUpdateBatch(List<User> userList){
            return userService.saveOrUpdateBatch(userList);
        }
        // 分页查询
        @GetMapping("/page")
        public Page<User> findPage(@RequestParam("pageNum") Integer pageNum,
                                        @RequestParam("pageSize") Integer pageSize){
            Page<User> page = new Page<>(pageNum, pageSize);
            QueryWrapper<User> queryWrapper = new QueryWrapper<>();
            userService.page(page, queryWrapper);
            return page;
        }
    }
    

    启动SpringBoot项目,测试生实体类型成的代码

    查询用户列表 /user

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    根据id查询用户 /user/1

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    更新或者保存用户 /user

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    查询用户总数 /user/count

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    根据id删除用户 /use特斯拉车标r分页符怎么设置/1

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    分页查询用户 /user/page?pageNu分页打印怎么设置m=2&pageS测试手机是否被监控ize=3

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

    批量删除 /user/delete

    Data Access 之 MyBatis Plus(三)- MPG代码生成器(Part B)

  • ShardingSphere 之 Sharding-JDBC 数据分片实践

    ShardingSphere 之 Sharding-JDBC 数据分片实践

    Offer 驾到,掘友接招!我正在参与2022春招打卡活动,点击查看活动详情。

    (更多…)

  • iFlutter – 加速Flutter开发

    iFlutter – 加速Flutter开发

    iFlutter是一款辅助Flutter开发的 IDEA 插件

    (更多…)

  • Flink 从0-1实现 电商实时数仓 – ODS & DWD(上)

    Flink 从0-1实现 电商实时数仓 – ODS & DWD(上)

    这是我参加8月更文应战的第5天,活动概略查看:8月更文应战

    (更多…)

  • 外观模式(Facade Pattern)

    外观模式(Facade Pattern)

    这是我参加8月更文应战的第11天,活动详情查看:8月更文应战

    (更多…)