SpringBoot整合Mybatis

开发流程

  1. IDEA 创建空Maven项目

  2. 创建模块,选择Spring Initializr模块

  3. 命名注意Artifact不能使用大写字符

  4. pom配置中,使用idea会自动生成,和mybatis整合,还需要导入以下的坐标

    <!--mybatis起步依赖 命名格式表示mybatis提供-->
         <dependency>
             <groupId>org.mybatis.spring.boot</groupId>
             <artifactId>mybatis-spring-boot-starter</artifactId>
             <version>1.1.1</version>
         </dependency>
    
         <!-- MySQL连接驱动 -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
         </dependency>
    
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
  5. 疑问点: 如果不添加下面的配置,第一次运行比较慢,可能是自己网络原因

    <plugin>
                 <artifactId>maven-clean-plugin</artifactId>
                 <version>3.1.0</version>
             </plugin>
    
             <plugin>
                 <artifactId>maven-resources-plugin</artifactId>
                 <version>3.0.2</version>
             </plugin>
             <plugin>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <version>3.8.0</version>
             </plugin>
             <plugin>
                 <artifactId>maven-surefire-plugin</artifactId>
                 <version>2.22.1</version>
             </plugin>
             <plugin>
                 <artifactId>maven-war-plugin</artifactId>
                 <version>3.2.2</version>
             </plugin>
             <plugin>
                 <artifactId>maven-install-plugin</artifactId>
                 <version>2.5.2</version>
             </plugin>
             <plugin>
                 <artifactId>maven-deploy-plugin</artifactId>
                 <version>2.8.2</version>
             </plugin>
  6. 分层如图
    图片说明

  7. 如果controller层不在springboot目录下,那么需要在启动类使用注解

    // 创建时产生的注解
    @SpringBootApplication
    // Dao层/Mapper层使用的注解
    @MapperScan(basePackages = "cn.qyh.dao")
    // 如果不在springbootmybatis3包下,那必须指定需要扫描的包,该注解表示,扫描qhy下的包
    @ComponentScan("cn.qyh.*")
    public class Springbootmybatis3Application {
     public static void main(String[] args) {
         SpringApplication.run(Springbootmybatis3Application.class, args);
     }
    }
  8. application.yml中配置

    1. resources文件夹和dao包/mapper包结构一样时,不需要再mybatis下指定位置
      spring:
      datasource:
      url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
      driverClassName: com.mysql.jdbc.Driver
      username: root
      password: 556677
      mybatis:
      type-aliases-package: cn.lau.bean
  9. Controller层

    @RestController
    public class UserController {
    
     @Autowired
     private UserDao userDao;
    
     @RequestMapping("/show")
     public List<User> showAll(){
         return userDao.queryAll();
     }
    }

注意

  1. 使用yml的优先级高于propert
  2. 注解的配置
  3. SSM的落伍
  4. Spring全家桶
全部评论

相关推荐

hso_:哈哈哈哈哈哈我没offer一样在同一道题开喷了
投递深圳同为数码等公司10个岗位
点赞 评论 收藏
分享
一名愚蠢的人类:多少games小鬼留下了羡慕的泪水
投递荣耀等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务