zoukankan      html  css  js  c++  java
  • springMVC笔记二

    如果数据绑定的过程中,类型转换出错,可以通过BindingResult(或者Errors)中找到,并进行国际化展示:

    注意:需要校验的bean和BindingResult(或者Errors)必须挨着,之间不能有其他入参。

    @RequestMapping(value="/emp", method=RequestMethod.POST)
    public String save(@Valid Employee employee, Errors result, 
            Map<String, Object> map){
        System.out.println("save: " + employee);
        
        if(result.getErrorCount() > 0){
            System.out.println("出错了!");
            
            for(FieldError error:result.getFieldErrors()){
                System.out.println(error.getField() + ":" + error.getDefaultMessage());
            }
            
            //若验证出错, 则转向定制的页面
            map.put("departments", departmentDao.getDepartments());
            return "input";
        }
        
        employeeDao.save(employee);
        return "redirect:/emps";
    }
    View Code

    ------------------------------------

    数据校验:

    Hibernate Validator是jsr 303的一种扩展,他不是hibernate

    实现Hibernate Validator的步骤是:

    1、加jar包,hibernate-validator-5.0.0.CR2.jar、hibernate-validator-annotation-processor-5.0.0.CR2.jar等。

    2、spring的上下文中要加入一个LocalValidatorFactoryBean(其实通过<mvc:annotation-driven>即可)

    3、需要在handler的目标方法的入参的bean前面加上@valid注解

    在页面上如何显示错误消息:

    <form:errors path="email"></form:errors>

    path是*的话,就会显示所有的错误消息,放在哪个字段后面,错误消息就会显示在哪里,且path写成字段的名字  

    Birth: <form:input path="birth"/>
    <form:errors path="birth"></form:errors>

    ------------------------------------

    返回json:

    1、加入三个jar包

    2、在handler里面写一个方法,直接返回需要的集合(都是java类型的)

    3、方法上额外加一个注解@ResponseBody

    ---------------------------------------

    MVC的拦截器用着太爽了!

    这个博客主要是javaEE相关或者不相关的记录, hadoop与spark的相关文章我写在下面地址的博客啦~ http://www.cnblogs.com/sorco
  • 相关阅读:
    idea设置全局ignore
    win 2012 安装mysql 5.7.20 及报错 This application requires Visual Studio 2013 Redistributable. Please ins
    win 2012 安装mysql 5.7.20 及报错 This application requires Visual Studio 2013 Redistr
    kafka 删除 topic
    java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError
    Centos中使用yum安装java时,没有jps的问题的解决
    Spring 整合Junit
    Spring纯注解配置
    Spring 基于注解的 IOC 配置
    打印java系统的信息
  • 原文地址:https://www.cnblogs.com/orco/p/6354570.html
Copyright © 2011-2022 走看看