3、使用 mysql-jpa
- 構造 數據庫實體類型
- 添加maven依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
(1) 創建 用戶表,新建 entity/User.java (注意,屬性小寫開頭)
package com.learn.first.entitys;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import com.learn.first.commons.StringTools;
@Entity
public class User{
@Id
@GeneratedValue
private Long id;
@Column(nullable = false, unique = true, length = 32)
private String userName;
@Column(nullable = false,length = 32)
private String passWord;
@Column(nullable = false, unique = true,length = 32)
private String phoneNum;
//...get--set
}
(3) 添加 數據庫配置 src/main/resources/application.properties ,(mysql要自己先到數據庫新建數據庫 test)
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8
spring.datasource.username=root
spring.datasource.password=asdf@#123
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
- 新建 Login2Controller.java
// 添加一天數據測試
@RequestMapping("")
public String index(){
//TODO TEST
if(userService.getUserByName("admin") == null){
User user = new User();
user.setUserName("admin");
user.setPassWord("admin");
user.setPhoneNum("110900");
userService.Add(user);
}
return "login/index";
}
//登錄驗證
@RequestMapping("/in")
public String in(@RequestParam String lname,@RequestParam String pwd){
User user = userService.getUserByName(lname);
if(user != null && user.checkPassWorl(pwd)){
session.setAttribute("name", "admin");
return "redirect:/";
}
return "redirect:/login/";
}
- 啓動 main 函數,瀏覽器輸入 http://127.0.0.1:8080/login2,輸入用戶名 admin,密碼 admin 登錄,觀察數據庫test中變化
- demo 地址