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 其實(shí)是一種規(guī)范,它的實(shí)現(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、進(jìn)行 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. 告別AJAX實(shí)現(xiàn)無刷新提交表單2. 封裝一個vue中也可使用的uniapp的全局彈窗組件(任何頁面都可以彈出)3. css列表標(biāo)簽list與表格標(biāo)簽table詳解4. webpack高級配置與優(yōu)化詳解5. 阿里前端開發(fā)中的規(guī)范要求6. html小技巧之td,div標(biāo)簽里內(nèi)容不換行7. XML入門的常見問題(一)8. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案9. 讀寫xml文件的2個小函數(shù)10. IE6/IE7/IE8/IE9中tbody的innerHTML不能賦值的完美解決方案
