spring boot 使用 mybatis

摘要采用的是注解模式

1.pom依赖

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!-- mybatis -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>

2.application.properties

spring.datasource.url=jdbc:mysql://localhost:3306/liu
spring.datasource.username=username
spring.datasource.password=pwd
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

3.数据表结构

这里写图片描述

4.java类

User.java

@Component
public class User {
    private String name;
    private int age;
    // get set 省略....
}

UserMapper.java ,这里提醒的是,记得加上 @Mapper 注解

@Mapper
public interface UserMapper {

    @Select("select * from user where id = #{id}")
    User getUsers(int id);

}

接下来是测试,配置已基本差不多,为了方便测试,这里说一下 spring boot 的CommandLineRunner,实现这个接口,在你启动项启动时,就会自动执行 run方法,如下
StartRun2.java
由于我数据库有2条数据,所以 查询id=1 的user用户

@Component
@Order(1)
@MapperScan("sample.mybatis.mapper")
public class StartRun2 implements CommandLineRunner{

    @Autowired
    UserMapper userMapper;

    @Override
    public void run(String... strings) throws Exception {
        User users = userMapper.getUsers(1);
        System.out.println("users:"+users);
    }
}

上面 @MapperScan 是扫描 @Mapper注解的
@Order(1) 是标记执行的顺序(可以写多个CommandLineRunner)

最后启动
Application.java

@SpringBootApplication
public class Application {
     public static void main(String args[]) {
         SpringApplication.run(Application.class, args);
     }
}

控制台信息如下

这里写图片描述

图上看出,测试成功,底下 @Order(2) 执行在后面

猜你喜欢

转载自blog.csdn.net/fengchen0123456789/article/details/79267216