第五章、使用Spring MVC開發 RESTful API(三)

修改User實體類

public class User {
	public interface UserSimpleView {};//用戶簡單視圖
	public interface UserDetailView extends UserSimpleView {};//用戶詳細視圖
	
	@JsonView(UserSimpleView.class)
	private String id;
	
	@JsonView(UserSimpleView.class)
	private String username;
	
	/**
	 * 驗證註解的元素值不爲空(不爲null、去除首位空格後長度爲0)
	 * 只應用於字符串且在比較時會去除字符串的空格
	 */
	@NotBlank(message = "密碼不能爲空")
	@JsonView(UserDetailView.class)
	private String password;
	
	@JsonView(UserSimpleView.class)
	@Past(message = "生日必須是過去時間")
	private Date birthday;

控制器

//模擬插入數據
@PostMapping
@JsonView(User.UserSimpleView.class)
//@RequestBody主要用來接收前端傳遞給後端的json字符串(映射請求體到java方法的參數)
//當參數校驗@Valid失敗,則將錯誤信息存於BindingResult裏面
public User create(@Valid @RequestBody User user, BindingResult errors){
	if(errors.hasErrors()){
		errors.getAllErrors().stream().forEach(error -> System.out.println(error.getDefaultMessage()));//打印錯誤信息
	}
	System.out.println(user.getId());
	System.out.println(user.getUsern
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章