輕輕鬆鬆學習SpringBoot2:第十六篇: SpringBoot和JPA(一)(mysql)
阿新 • • 發佈:2019-01-23
Spring操作資料庫的方式有很多種,這一遍我們講解的是jpa(Java Persistence API)
一:建立資料庫test
create database test
二:引入maven配置檔案
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.26</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>
一個是mysql的,一個是jpa
三:配置檔案配置資料庫
ddl-auto:create----每次執行該程式,沒有表格會新建表格,表內有資料會清空
ddl-auto:create-drop----每次程式結束的時候會清空表
ddl-auto:update----每次執行程式,沒有表格會新建表格,表內有資料不會清空,只會更新
ddl-auto:validate----執行程式會校驗資料與資料庫的欄位型別是否相同,不同會報錯
啟動工程我們發現日誌中一些變化
四:定義一個java類,並使用@Entity便籤定義
package com.example.test; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity public class Test { private Integer id; private Integer age; private String name; @Id @GeneratedValue public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
我們發現庫中自動生成這個表了
和資料的表自生成
我們再來看一下生成的表的建表語句
有模有樣,哈哈,當然我們發現建的表是MyISAM型別的,這可不是我們想要的
我們想要innodb型別,如何是好
我們修改配置檔案
添加了
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
我們把庫中表刪了,重啟下服務