SpringBoot JPA使用配置過程詳解
JPA是什么? JPA(Java Persistence API)是Sun官方提出的Java持久化規(guī)范. 為Java開發(fā)人員提供了一種對象/關(guān)聯(lián)映射工具來管理Java應(yīng)用中的關(guān)系數(shù)據(jù). 它的出現(xiàn)是為了簡化現(xiàn)有的持久化開發(fā)工作和整合ORM技術(shù). 結(jié)束各個ORM框架各自為營的局面.JPA 其實是一種規(guī)范,它的實現(xiàn)中比較出名的是 Hibernate 框架;
1、pom 引入依賴:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> <version>5.1.18</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version> </dependency>
2、添加配置文件
#數(shù)據(jù)庫連接信息spring.datasource.type=com.alibaba.druid.pool.DruidDataSourcespring.datasource.username=rootspring.datasource.password=521huispring.datasource.url=jdbc:mysql://localhost:3306/test#JPA設(shè)置spring.jpa.show-sql=truespring.jpa.database=mysqlspring.jpa.database-platform=mysqlspring.jpa.hibernate.ddl-auto=updatespring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL57Dialect
3、編寫 bean
@Entity(name = 't_book')public class Book { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String name; private String author; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAuthor() { return author; } public void setAuthor(String author) { this.author = author; } @Override public String toString() { return 'Book{' +'id=' + id +', name=’' + name + ’’’ +', author=’' + author + ’’’ +’}’; }}
4、編寫 接口
public interface BookDao extends JpaRepository<Book,Integer> {}
5、啟動程序,數(shù)據(jù)庫創(chuàng)建表
6、進行 CRUD 測試
@Autowired BookDao bookDao; @Test void testInsert() { Book book = new Book(); book.setName('孔雀翎'); book.setAuthor('古龍'); bookDao.save(book); } @Test void testupdate() { Book book = new Book(); book.setName('笑傲江湖'); book.setAuthor('金庸'); book.setId(1); bookDao.saveAndFlush(book); } @Test void testdelete() { bookDao.deleteById(1); } @Test void testFind() { System.out.println(bookDao.findById(4).toString()); }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python如何實現(xiàn)word批量轉(zhuǎn)HTML2. python excel和yaml文件的讀取封裝3. Java8內(nèi)存模型PermGen Metaspace實例解析4. python3實現(xiàn)往mysql中插入datetime類型的數(shù)據(jù)5. moment轉(zhuǎn)化時間戳出現(xiàn)Invalid Date的問題及解決6. python爬蟲實戰(zhàn)之制作屬于自己的一個IP代理模塊7. Docker鏡像管理常用操作代碼示例8. 詳解docker pull 下來的鏡像都存到了哪里9. Python中內(nèi)建模塊collections如何使用10. asp批量添加修改刪除操作示例代碼
