zoukankan      html  css  js  c++  java
  • SpringBoot_MyBatisPlus快速入门小例子

    快速入门

    创建一个表

    我这里随便创建了一个air空气表

    idea连接Mysql数据库

    点击右侧database再点击添加数据库

    找到Mysql

    添加用户名,密码,数据库最后点击测试

    测试成功后在右侧就能看到数据库了

    创建实体类

    右键数据库,找到scripted Extensions选择Generated POJOs. groovy 然后选择将实体类创建的位置,确定.

    生成的实体类会有get``set方法,这里我们用lombok注解进行操作

    @Data //自动生成`get`,`set`,`RequiredArgsConstructor`,`ToString`, `EqualsAndHashCode`方法
    @AllArgsConstructor//自动生成全参构造
    @NoArgsConstructor//自动生成无参构造生成的所有代码在class文件中查看
    public class Air {
    
      private long id;
      private long districtId;
      private java.sql.Date monitorTime;
      private long pm10;
      private long pm25;
      private String monitoringStation;
      private java.sql.Date lastModifyTime;
    
    }
    

    创建Mapper类

    相对与mybatis mybatisplus的代码量是不是减少了很多

    @Repository
    //在对应的Mapper上面继承基本的接口BaseMapper
    public interface AirMapper extends BaseMapper<Air> {
    //    所有的CRUD操作都已经编写完成
    //    不需要配置一大堆文件
    }
    

    Service层

    为了完整我加入了service层便于理解
    创建AirServiceAirSerivceImpl

    public interface AirService {
        List<Air> getAllAir();
    }
    
    @Service  //别落下Service注解,否则会显示Autowired注入失败错误
    public class AirServiceImpl implements AirService  {
        @Autowired  //自动装配
        private AirMapper airMapper;
        @Override
        public List<Air> getAllAir() {
            List<Air> airs = airMapper.selectList(null);//selectList方法就是之前AirMapper继承的BaseMapper里的方法,这里需要传一个Wrapper的参数,我先设置为null.其实这个Wrapper就是一个条件,
            return airs;
        }
    }
    

    测试类

    @SpringBootTest
    class MybatisApplicationTests {
        @Autowired
        private AirService service;
        @Test
        void contextLoads() {
            List<Air> allAir = service.getAllAir();
            for (Air a: allAir
                 ) {
                System.out.println(a.toString());
            }
        }
    } 
    

    成功

    我会写代码+代码改变世界=我会改变世界! 为什么要改变世界? 如果无法改变世界,那么,世界就会改变我......
  • 相关阅读:
    探讨SQL Server并发处理存在就更新七种解决方案
    集合随机打乱
    订单并发5000的排队机制
    10款面向HTML5 画布(Canvas)的JavaScript库
    抽象类和接口的区别以及使用场景(记)
    常用的正则表达式
    webview加载url出现空白页面,有些页面没问题
    SQL常用语句
    Android Studio 简单介绍和使用问题小结
    Android中获取应用程序(包)的信息-----PackageManager的使用(一)
  • 原文地址:https://www.cnblogs.com/chougoushi/p/13434392.html
Copyright © 2011-2022 走看看