1. 程式人生 > >springmvc 數據校驗

springmvc 數據校驗

app request return urn pem 顯示 inpu prope pub

    private Integer id;
    @NotEmpty
    private String lastName;

    @Email
    private String email;
    //1 male, 0 female
    private Integer gender;
    
    private Department department;
    
    @Past
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date birth;
    
    @NumberFormat(pattern
="#,###,###.#") private Float salary;

頁面顯示錯誤信息

<form:errors path="*"></form:errors>
<form:errors path="lastName"></form: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"; }

技術分享圖片

i18n.properties

NotEmpty.employee.lastName=^^LastName\u4E0D\u80FD\u4E3A\u7A7A.
Email.employee.email=Email\u5730\u5740\u4E0D\u5408\u6CD5
Past.employee.birth=Birth\u4E0D\u80FD\u662F\u4E00\u4E2A\u5C06\u6765\u7684\u65F6\u95F4. 

typeMismatch.employee.birth=Birth\u4E0D\u662F\u4E00\u4E2A\u65E5\u671F. 

springmvc 數據校驗