【SpringMVC】拦截器&JSR303的使用
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.validation.Valid;
@Controller
public class MyController {
// 使用JSR303验证和Spring MVC的@Valid注解来处理验证
@RequestMapping(value = "/submitData.do", method = RequestMethod.POST)
public @ResponseBody String submitData(@Valid MyData data, BindingResult result) {
if (result.hasErrors()) {
// 如果有错误,返回错误信息
return "Error: " + result.getFieldError().getDefaultMessage();
}
// 如果没有错误,处理数据
return "Data processed: " + data.toString();
}
}
// 需要验证的数据类
class MyData {
@NotEmpty
private String name;
@Min(10)
private int age;
// getters and setters
}
这个例子中,我们定义了一个简单的Spring MVC控制器,其中包含一个处理POST请求的方法。我们使用了@Valid
注解来触发JSR-303验证,并且传入了BindingResult
来获取验证结果。如果验证失败,将返回错误信息;如果验证成功,将处理数据。这个例子展示了如何在Spring MVC中结合使用JSR303验证。
评论已关闭