springMVC-数据格式化

1、基本介绍       

在一个springmvc项目中,当表单提交数据时,如何对表单提交的数据进行格式的转换呢?

 只要是数据进行网络传输都是以字符串的形式,进入内存后才有数据类型。

springmvc在上下文环境内置了一些转换器,可以完成基本数据类型和字符串的转换比如

springMVC-数据格式化_第1张图片

这些都是由springMVC自动完成,不需要程序员去写。

2、基本数据格式转换的案例

springMVC-数据格式化_第2张图片 

springMVC-数据格式化_第3张图片

 

可以看到id 这个字符串自动转成了Integer, 

现在故意把id的值改为abc

springMVC-数据格式化_第4张图片

那么会报400的错误。

springMVC-数据格式化_第5张图片

3、特殊数据类型的转换案例

假设有字段需要特殊的格式,可以按照以下示例来写

1、直接在javaBean的属性上写上springMVC提供的注解

public class MonsterOne {
    private Integer id;
    private String name;
    //通过注解,说明生日时间的格式为yyyy-MM-dd
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date birthday;
    //通过注解,说明工资的格式为###,##.##(即小数)
    @NumberFormat(pattern = "###,##.##")
    private float salary;
@Controller
@RequestMapping(value = "/monster")
public class MonsterHandler {
    @RequestMapping(value = "/monster01")
    public String monster01(MonsterOne monsterOne){
        System.out.println(monsterOne);
        return "monsterOK";
    }
}

2、这样就要求前端必须要按照后端注解规定的格式写 

id:
name:
birthday:
salary:

3、如果格式没有对应上后端的注解格式, 那么会报400错误。

4、如何使得springMVC可以自动显示错误在页面上,看下一个文章 springMVC验证与国际化

你可能感兴趣的:(ssm学习,mvc,spring)