register.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="author" content="heoclark">
<meta charset="UTF-8">
<title>注冊</title>
</head>
<body>
<!-- 注冊表單 -->
<div id="register">
<form id="register_form" action="/user/doRegister" method="post">
<input type="text" name="input_username" placeholder="用戶名" maxlength="50"/>
<input type="password" name="input_username" placeholder="密碼" maxlength="20" />
<input type="submit" name="submit" value="submit" />
</form>
</div>
</body>
</html>
User.java
package com.heoclark.webapp.entity;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
public class User {
/**
* 需要注意的是厨内,數(shù)據(jù)庫中的列名與實體類的變量名應(yīng)該保持一致枫匾,否則查找出來的值可能為NULL
*/
private Integer id;
@NotNull (message = "用戶名不能為空")
private String username;
@NotNull (message = "密碼不能為空")
@Size (min = 6, max = 20, message = "密碼長度至少為6腿堤,最長不超過20")
private String password;
@Email (message = "郵箱格式不正確")
private String email;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
WebController.java
package com.heoclark.webapp.controller;
import com.heoclark.webapp.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.validation.ObjectError;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.validation.Valid;
import java.util.List;
@Controller
@RequestMapping(value = "/user")
public class WebController {
@GetMapping(value = "/register")
public String register() {
return "register";
}
@PostMapping(value = "/doRegister")
public @ResponseBody User doRegister(@Valid User user, BindingResult result, Model model) {
if (result.hasErrors()) {
List<ObjectError> list = result.getAllErrors();
for (ObjectError error:list) {
System.out.println(error.getDefaultMessage());
}
return null;
}
System.out.println("注冊");
return user;
}
}