Spring Boot 學習筆記(2):JDBC

HOWD發表於2018-09-26

本文講解 Spring Boot 基礎下,如何使用 JDBC,配置資料來源和通過 JdbcTemplate 編寫資料訪問。

首先在pom.xml中引入jdbc依賴

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
複製程式碼

新增MySql依賴

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.43</version>
    </dependency>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.1.3</version>
    </dependency>
複製程式碼

在src/main/resources/application.properties中配置資料來源資訊

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3307/springboot
spring.datasource.username=root
spring.datasource.password=root
複製程式碼

執行資料庫指令碼

CREATE DATABASE /*!32312 IF NOT EXISTS*/`springboot_db` /*!40100 DEFAULT CHARACTER SET utf8 */;
 
USE `springboot`;
 
DROP TABLE IF EXISTS `t_author`;
 
CREATE TABLE `t_author` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '使用者ID',
  `name` varchar(32) NOT NULL COMMENT '測試名稱',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
複製程式碼

建立實體物件

public class Author {
    private long id;//使用者ID.
    private String name;//測試名稱.
    // SET和GET方法
}
複製程式碼

Controller層

@RestController
@RequestMapping(value="/data/jdbc/author")
public class DemoController {

    @Autowired
    private AuthorService AuthorService;

  /**
   * 新增方法
   */
  @RequestMapping(method = RequestMethod.POST)
  public void add(@RequestBody JSONObject jsonObject) {
    String id = jsonObject.getString("id");
    String name = jsonObject.getString("name");
    Author author = new Author();
    if (author!=null) {
        author.setId(Long.valueOf(id));
    }
    author.setName(name);
    try{
        this.authorService.add(author);
    }catch(Exception e){
        e.printStackTrace();
        throw new RuntimeException("新增錯誤");
    }
  }
複製程式碼

Service層

public interface BaseAuthorService {
    int add(Author author);
}
複製程式碼

service實現類

@Service
public class AuthorService implements BaseAuthorService {


    @Autowired
    private AuthorDao authorDao;

    public Demo add(Long id){
        return authorDao.add(id);
    }

}
複製程式碼

DAO層

public interface BaseAuthorDao {
    int add(Author author);
}
複製程式碼

Dao層實現類

@Repository
public class AuthorDao implements BaseAuthorDao {
    @Autowired
    private AuthorDao authorDao;

    @Override
    public int add(Author author) {
        return authorDao.add(author);
    }
}
複製程式碼

上面介紹的JdbcTemplate只是最基本的新增操作,更多使用方法請參考:JdbcTemplate API

在Spring Boot中使用Jdbc訪問資料庫依舊秉持Spring Boot框架的特點:簡單。

我們只需要在pom.xml中加入資料庫依賴,再到application.properties中配置連線資訊,不需要像Spring應用中建立JdbcTemplate的Bean,就可以直接在自己的物件中注入使用。

感謝你花時間讀到結尾!:D

後端一枚,默默搬磚擼程式碼,如果覺得不錯歡迎關注我的公眾號

Spring Boot 學習筆記(2):JDBC

相關文章