springboot结合mybatis连接数据库

1,979 阅读2分钟

1.所需springboot及数据库相关依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <version>2.0.1.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <version>test</version>
    </dependency>

    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.3.2</version>
    </dependency>

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.45</version>
    </dependency>

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.1.9</version>
    </dependency>

*注意各依赖之间的版本兼容,否则容易出现报错!

2.编辑springboot配置文件 application.proper(yml),配置连接数据库所需要的参数

 spring:
  datasource:
   url: jdbc:mysql://localhost:3306/test
   username: 你的mysql账号
   password: 你的mysql密码
   driver-class-name: com.mysql.jdbc.Driver

3.编写测试数据库test及所需测试table

 CREATE TABLE user(
  id INT NOT NULL UNIQUE auto_increment,
  name VARCHAR(64) NOT NULL,
  email VARCHAR(64) NOT NULL,
  PRIMARY KEY (id)
 )

4.编写对应数据库 user 表的对象 (mybatis ORM 特性)

 public class User {
 private int id;
 private String name;
 private String email;

 public int getId() {
    return id;
}

 public void setId(int id) {
    this.id = id;
}

 public String getName() {
    return name;
}

 public void setName(String name) {
    this.name = name;
}

 public String getEmail() {
    return email;
}

 public void setEmail(String email) {
    this.email = email;
}

}

5.编写dao层(对数据库进行CRUD)

 @Mapper
 public interface UserDao {
   @Select("select id as id,name as name,email as email from user")
   List<User> findAllUser();

 }

6.编写Service层 (调用dao层)

 @Service
 public class UserService {

  @Autowired
  private UserDao userDao;

  public List<User> findAllUser(){
    return userDao.findAllUser();
 }
}

7.编写controller层 (实现前后端交互,调用service层)

 @RestController
 public class UserController {

  @Autowired
  private UserService userService;

  @RequestMapping("listall")
  public List<User> findAllUser01(){
    return userService.findAllUser();
 }
}

8.启动springboot 应用

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

9.访问 http://localhost:8080/listall 即可验证是否已经连接数据库及操作数据库

*springboot 默认服务端口为8080

*emmm 因为我们没有user表中加入数据 ,所以查看到数据为空。 *注意 springboot 和数据库相关版本的兼容性!!