spring boot 學習筆記(008)mysql

spring boot默認使用 Hibernate 來實現jpa


只用最快方式打通數據庫操作。

1,修改pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>hui.study.demo</groupId>
    <artifactId>springboot</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.3.RELEASE</version>
    </parent>

    <dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
		</dependency>
		<dependency>
		    <groupId>mysql</groupId>
		    <artifactId>mysql-connector-java</artifactId>
		</dependency>
    </dependencies>
</project>

增加了兩個依賴:

spring-boot-starter-data-jpa和mysql-connector-java


2,

在命令行中,CD到工程目錄,執行mvn eclipse:eclipse

然後回到STS,右鍵工程,刷新


3,本機安裝好mysql,並且建庫建用戶,然後賦權限。這一步就不詳細描述了。

不需要建表,直接在代碼裏就可以注入配置。


4,修改application.properties文件,增加下列內容:

spring.datasource.url = jdbc:mysql://localhost:3306/AAAAAAAA
spring.datasource.username = root
spring.datasource.password = #########
spring.datasource.driverClassName = com.mysql.jdbc.Driver
# Specify the DBMS
spring.jpa.database = MYSQL
# Show or not log for each sql query
spring.jpa.show-sql = true
# Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto = update
# Naming strategy
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy

# stripped before adding them to the entity manager)
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

把AAAAAAA替換成數據庫名,root改成對應的用戶,#######改成密碼。

記得運行 mvn -X clean install

參照上一篇文章 007


5,修改UserInfo.java

package springboot;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "userinfo")
public class UserInfo{

	@Id
	private String userCode;
	private String userName;
	private String deptCode;
	public String getUserCode() {
		return userCode;
	}
	public void setUserCode(String userCode) {
		this.userCode = userCode;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getDeptCode() {
		return deptCode;
	}
	public void setDeptCode(String deptCode) {
		this.deptCode = deptCode;
	}
	
}

這時可以運行了工程了。運行後,發現數據庫中多了一張表:UserInfo


6,增加對錶的操作

新建interface: UserDao

package springboot;

import javax.transaction.Transactional;

import org.springframework.data.repository.CrudRepository;

@Transactional
public interface UserDao extends CrudRepository<UserInfo, Long> {
  public UserInfo findByDeptCode(String deptCode);
}


7,修改HelloWorld.java,修改方法:

	@RequestMapping(value="/trequest", method = RequestMethod.POST)  
	@ResponseBody
    public UserInfo trequest(@RequestBody UserInfo pu){
		logger.log(Level.INFO, "just test the log. (/trequest)");

		UserInfo u = new UserInfo();
		u.setUserCode(pu.getUserCode());
		u.setUserName(pu.getUserName());
		u.setDeptCode(pu.getDeptCode());

		userdao.save(u);

		return u;
    }

這時,訪問
http://localhost:8090/

Request內容填:

{"userCode":"ABC001", "userName":"第一個用戶", "deptCode":"CC001"}


返回成功。看數據庫中,多了一條數據了。


打完收工。都是快速打通經脈,沒有仔細研究所以然,後面再慢慢積累內功吧。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章