SpringBoot實戰SpringDataJPA

前言:經過SpringDataJPA實現對數據庫的增刪改查
SpringDataJPA:經過提供基於JPA的Repository減小了JPA做爲數據訪問方案的代碼量,僅僅須要編寫一個接口集成下SpringDataJPA內部定義的接口便可完成簡單的CRUD操做。java

  1. pom.xml下引入依賴mysql

pom.xml下引入SpringDataJPA和mysql的dependencyspring

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
  1. 配置application.yml文件sql

對數據庫鏈接和jpa進行配置數據庫

datasource:
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: root
    driverClassName: com.mysql.jdbc.Driver
jpa:
    hibernate:
      ddl-auto: update
    show-sql: true
  1. 編寫實體app

編寫一個Book類,屬性:id,bookName,author。
運行後數據庫會生成一個Book表spring-boot

@Entity
public class Book {

    @Id
    @GeneratedValue
    private Integer id;

    private String bookName;

    private String author;

    public Book() {
    }

    public Integer getId() {
        return id;
    }

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

    public String getBookName() {
        return bookName;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }
}
  1. 編寫BookRepository接口this

編寫一個BookRepository接口繼承JpaRepositoryurl

BookRepository extends JpaRepository
public interface BookRepository extends JpaRepository<Book,Integer>{


}
  1. 編寫BookController定義路由實現對Book表的增刪改查hibernate

IOC控制反轉

@Autowired
    private BookRepository bookRepository;

查詢Book的列表

@GetMapping(value = "/books")
    public List<Book> bookList(){
        return bookRepository.findAll();
    }

添加一本書

@PostMapping(value = "books")
    public Book bookAdd(@RequestParam("author") String author,
                          @RequestParam("bookName") String bookName){
        Book book = new Book();
        book.setAuthor(author);
        book.setBookName(bookName);

        return bookRepository.save(book);

    }

刪除一本書

@DeleteMapping(value = "/books/{id}")
    public void bookDelete(@PathVariable("id") Integer id){
        bookRepository.delete(id);

更新一本書

@PutMapping(value = "/books/{id}")
    public Book bookUpdate(@PathVariable("id") Integer id,
                           @RequestParam("author") String author,
                           @RequestParam("bookName") String bookName){
        Book book = new Book();
        book.setId(id);
        book.setAuthor(author);
        book.setBookName(bookName);

        return bookRepository.save(book);
    }

總結:這是利用SpringDataJPA實現的對數據庫增刪改查功能,下一篇實現分頁功能

相關文章
相關標籤/搜索