真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

springmvc的@Validated注解使用

1. 校驗(yàn)的錯(cuò)誤信息, 可以直接在bean屬性上配置, 也可以在properties中配置。

目前創(chuàng)新互聯(lián)已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站改版維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、邗江網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

2. 將校驗(yàn)器bean配置到注解驅(qū)動(dòng)上

3. 在需要校驗(yàn)的pojo前邊添加@Validated,在需要校驗(yàn)的pojo后邊添加BindingResult bindingResult接收校驗(yàn)出錯(cuò)信息

注意:@Validated和BindingResult bindingResult是配對出現(xiàn),并且形參順序是固定的(一前一后)。

使用validated所需配置:

1. jar包

springmvc的@Validated注解使用

2. application.xml

 
  
  	
  	
  	
  	
  
  
  

  	
  		
  			classpath:testErrMessages
  		
  	

  	

  	
  
  
  
  
  
  

3. testErrMessage.properties文件

文件結(jié)構(gòu):

springmvc的@Validated注解使用

文件內(nèi)容:

springmvc的@Validated注解使用

4. bean的配置, 省略get/set方法

public class ValidBean {
     //直接配置錯(cuò)誤信息
	@NotBlank(message="用戶名不能為空", groups= {UserGroup1.class})
	private String name;
	
	@Max(value=120, message="年齡最大為120")
	private Integer age;
	
	// 使用配置文件中的錯(cuò)誤信息, properties中的key: message="{key}"。 {}:占位符
	@NotBlank(message="{validator.user.address}")
	private String address;
}

5. controller

@Controller
@RequestMapping("/test/")
public class ValidTestController {

	/**
	 * 
	 * @desc: 校驗(yàn)沒有分組的屬性
	 * @auth: zona
	 * 2017年2月19日 下午2:35:42 
	 * @param bean
	 * @param bindingResult
	 * @return
	 */
	@RequestMapping("valid")
	@ResponseBody
	public Result testValid(@Validated ValidBean bean, BindingResult bindingResult) {
		Result result = new Result();
		Map retMap = new HashMap();
		StringBuilder sb = new StringBuilder();
		if(bindingResult.hasErrors()) {
			List errors = bindingResult.getAllErrors();
			for (ObjectError err : errors) {
				sb.append(err.getDefaultMessage()+"; ");
			}
			result.setErrInfo(sb.toString());
			result.setErrNo(1);
			 return result;
		}
		retMap.put("bean", bean);
		result.success();
		result.setData(retMap);
		return result;
	}
	
	/**
	 * 
	 * @desc: 僅對屬于userGroup組的屬性進(jìn)行校驗(yàn)
	 * @auth: zona
	 * 2017年2月19日 下午2:37:03 
	 * @param bean
	 * @param bindingResult
	 * @return
	 */
	@RequestMapping("group/valid")
	@ResponseBody
	public Result testGroupValid(@Validated(value=UserGroup1.class) ValidBean bean, BindingResult bindingResult) {
		Result result = new Result();
		Map retMap = new HashMap();
		StringBuilder sb = new StringBuilder();
		if(bindingResult.hasErrors()) {
			List errors = bindingResult.getAllErrors();
			for (ObjectError err : errors) {
				sb.append(err.getDefaultMessage()+"; ");
			}
			result.setErrInfo(sb.toString());
			result.setErrNo(1);
			 return result;
		}
		retMap.put("bean", bean);
		result.success();
		result.setData(retMap);
		return result;
	}
}

測試結(jié)果:

只校驗(yàn)沒有分組的屬性

springmvc的@Validated注解使用

校驗(yàn)UserGroup1組的屬性

springmvc的@Validated注解使用

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


分享文章:springmvc的@Validated注解使用
本文來源:http://weahome.cn/article/ijcepe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部