您好,登錄后才能下訂單哦!
本文主要給大家介紹spring boot 如何訪問 mysql的主要方法,其所涉及的東西,從理論知識來獲悉,有很多書籍、文獻可供大家參考,從現實意義角度出發,億速云累計多年的實踐經驗可分享給大家。
spring boot 訪問 mysql
方式二:spring data jpa
為什么使用 jpa :
第一次使用 Spring JPA 的時候,感覺這東西簡直就是神器,幾乎不需要寫什么關于數據庫訪問的代碼一個基本的 CURD 的功能就出來了。
如何使用:
在 pom 文件中引入依賴
<!--jpa -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>2.1.6.RELEASE</version>
</dependency>
<!-- mysql驅動 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
配置數據庫:
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
# JPA 相關配置
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
#在 SrpingBoot 2.0 版本中,Hibernate 創建數據表的時候,默認的數據庫存儲引擎選擇的是 MyISAM (之前是 InnoDB)。這個參數是在建表的時候,將默認的存儲引擎切換為 InnoDB 用的。
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
創建 Entity Dao Service Controller 三層文件:
entity:
@Entity
@Table(name = "user")
public class JpaUser {
@Id
@GeneratedValue
private Long id;
private String name;
private int age;
private String sex;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
Dao
寫一個接口 繼承 JpaRepository 簡單的 CRUD 可以直接使用了
@Repository
public interface JpaUserDao extends JpaRepository<JpaUser,Long> {
}
Service
@Service
public class JpaUserService {
@Autowired
JpaUserDao userDao;
public JpaUser add(JpaUser user){
return userDao.save(user);
}
public JpaUser update(JpaUser user){
return userDao.save(user);
}
public JpaUser getById(long id){
return userDao.findById(id).get();
}
}
Controller
@RestController
@RequestMapping("/jpaUser")
public class JpaUserController {
@Autowired
JpaUserService userService;
@RequestMapping(value = "/add",method = RequestMethod.POST)
public Object addUser(@RequestBody JpaUser user){
return userService.add(user);
}
@RequestMapping(value = "/update",method = RequestMethod.PUT)
public Object updateUser(@RequestBody JpaUser user){
return userService.update(user);
}
@RequestMapping(value = "/find",method = RequestMethod.GET)
public Object updateUser(long id){
return userService.getById(id);
}
}
完成 啟動 訪問測試
jpa 配置說明:
spring.jpa.hibernate.ddl-auto=create ----每次運行該程序,沒有表格會新建表格,有表會刪除表重新創建表
spring.jpa.hibernate.ddl-auto=create-drop ----每次程序結束的時候會清空表
spring.jpa.hibernate.ddl-auto=update ----每次運行程序,沒有表格會新建表格,表內有數據不會清空,只會更新表結構
spring.jpa.hibernate.ddl-auto=validate ----運行程序會校驗數據與數據庫的字段類型是否相同,不同會報錯
看了以上spring boot 如何訪問 mysql的主要方法介紹,希望能給大家在實際運用中帶來一定的幫助。本文由于篇幅有限,難免會有不足和需要補充的地方,大家可以繼續關注億速云行業資訊板塊,會定期給大家更新行業新聞和知識,如有需要更加專業的解答,可在官網聯系我們的24小時售前售后,隨時幫您解答問題的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。