SpringBoot JPA使用配置過(guò)程詳解
JPA是什么? JPA(Java Persistence API)是Sun官方提出的Java持久化規(guī)范. 為Java開(kāi)發(fā)人員提供了一種對(duì)象/關(guān)聯(lián)映射工具來(lái)管理Java應(yīng)用中的關(guān)系數(shù)據(jù). 它的出現(xiàn)是為了簡(jiǎn)化現(xiàn)有的持久化開(kāi)發(fā)工作和整合ORM技術(shù). 結(jié)束各個(gè)ORM框架各自為營(yíng)的局面.JPA 其實(shí)是一種規(guī)范,它的實(shí)現(xiàn)中比較出名的是 Hibernate 框架;
1、pom 引入依賴(lài):
<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ù)庫(kù)連接信息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、編寫(xiě) 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、編寫(xiě) 接口
public interface BookDao extends JpaRepository<Book,Integer> {}
5、啟動(dòng)程序,數(shù)據(jù)庫(kù)創(chuàng)建表
6、進(jìn)行 CRUD 測(cè)試
@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()); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. JSP動(dòng)態(tài)網(wǎng)頁(yè)開(kāi)發(fā)原理詳解2. ASP顯示頁(yè)面執(zhí)行時(shí)間的方法3. SpringBoot+Docker+IDEA實(shí)現(xiàn)一鍵構(gòu)建+推送、運(yùn)行、同鏡像多容器啟動(dòng)4. Java并發(fā)編程之Executor接口的使用5. JavaScript判斷數(shù)據(jù)類(lèi)型有幾種方法及區(qū)別介紹6. 推薦值得學(xué)習(xí)的12款python-web開(kāi)發(fā)框架7. 淺談java中HashMap鍵的比較方式8. JavaScript實(shí)現(xiàn)動(dòng)態(tài)留言板9. vue父子組件傳值不能實(shí)時(shí)更新的解決方法10. 以PHP代碼為實(shí)例詳解RabbitMQ消息隊(duì)列中間件的6種模式
