3分钟搭建springboot+mybatis+mybatis-generator项目

此项目使用idea用Spring Initializr快速搭建,不含service和controller层,使用单元测试试通数据库查询

0)准备数据库表

数据库执行下面语句,创建d_user表

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for d_user
-- ----------------------------
DROP TABLE IF EXISTS `d_user`;
CREATE TABLE `d_user`  (
  `id` int(0) NOT NULL,
  `name` varchar(25) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of d_user
-- ----------------------------
INSERT INTO `d_user` VALUES (1001, '雨欣', '100011');
INSERT INTO `d_user` VALUES (1002, '雨欣:324:324:324', '100012');

SET FOREIGN_KEY_CHECKS = 1;

如下:


image.png

1)创建Spring Initializr

鼠标选择:file>new>project...进入创建菜单
选择Spring Initializr 修改配置值并next


image.png

随后选择你想用的功能,本人在pom文件中添加的,此处直接略过finish


image.png

创建后结构如下:
image.png

2)mybatis-gennerator生成dao,mapper

项目生成后配置pom文件,引入需要的依赖:在pom文件的build下添加如下代码:


    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            

            
            
                org.mybatis.generator
                mybatis-generator-maven-plugin
                1.3.2
                
                    
                        src/main/resources/generator/genteratorCongfig.xml
                    
                    true
                    true
                
                
                    
                        mysql
                        mysql-connector-java
                        8.0.16
                    
                    
                        tk.mybatis
                        mapper
                        3.4.2
                    
                
            
        
        
        
            
                src/main/java
                
                    **/*.properties
                    **/*.xml
                    **/*.yml
                
                false
            
            
                src/main/resources
                
                    **/*.properties
                    **/*.xml
                    **/*.yml
                
                false
            
        
    

更新pom依赖加载,在resources文件夹下添加generator文件夹,并创建config.properties;genteratorCongfig.xml;


image.png

代码直接粘贴如下:
其中config.properties文件内容如下,注意修改你的数据库配置,自动生成的mapper,dao子文件夹名称,以及生成路径

jdbc.driverClass=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
jdbc.user=root
jdbc.password=root


#模块名
moduleName=d_user
#表名
tableName=d_user
#默认路径
modelPath=com.example.demo1

其中genteratorCongfig.xml 文件内容如下




    

    
        
        

        
            
            
            
        

        
        

        
        

        
        

        
        

        
        
        

随后双击序号3处,等待自动生成组件,生成mapper;dao;model如下


image.png

打开生成文件,此时pom未引入相关依赖,方法报错:


image.png

再次打开pom文件,配置如下内容:(包括了测试单元)

        
            tk.mybatis
            mapper-spring-boot-starter
            2.1.5
        

        
            org.projectlombok
            lombok
            true
        
        
        
            mysql
            mysql-connector-java
            8.0.16
            runtime
        

        
            tk.mybatis
            mapper
            3.4.2
        
        
            junit
            junit
            test
        

解决报错

3)创建查询语句

创建application.yml,mybatis-config.xml文件如下:


image.png

application文件内容如下:

spring:
  application:
    name: springboot-mybatis
#  profiles:
#    active: test
  datasource:
    #MySQL数据库支持配置
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowMultiQueries=true
    username: root
    password: root
    type: com.zaxxer.hikari.HikariDataSource
    hikari:
      minimum-idle: 5
      maximum-pool-size: 100
      idle-timeout: 600000
      pool-name: OrderHikariCP
      max-lifetime: 1800000
      connection-timeout: 60000
      connection-test-query: SELECT 1
server:
  port: 8088
mybatis:
  config-location: classpath:mybatis-config.xml
  type-aliases-package: org.example.common.dao.**
  mapper-locations: classpath:mapper/*/*.xml
dataType: 0

mybatis-config文件内容如下:




    
        
    
    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    



随后在mapper中创建查询selectAllById方法:


image.png
    DUser selectAllById(@Param("id") Integer id);

在mapper映射中添加查询语句:


image.png

注意:resultType若为java对象,地址映射对。

  
    id,name,ip
  
  
  

再修改springboot启动项如下:


image.png
@ComponentScan(value = {"com.example"})
@MapperScan("com.example.demomybatis.**")

修改测试启动项如下:


image.png
@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = Demo1Application.class)
class Demo1ApplicationTests {

    @Autowired(required=true)
    DUserMapper dUserMapper;

    @Test
    void contextLoads() {
        System.out.println("here==="+dUserMapper.selectAllById(1001).getName());
    }
}

启动测试单元,查询成功。


image.png

注意:若重新逆向工程创建项目,需要删除mapper文件,不然累加,启动报错

进阶项目---搭建dubbo项目: https://www.jianshu.com/p/be534104785b

你可能感兴趣的:(3分钟搭建springboot+mybatis+mybatis-generator项目)