本文主要是介绍SpringMVC使用:类型转换数据格式化数据验证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
01-类型转换器
先在pom.xml里面导入依赖,一个是mvc框架的依赖,一个是junit依赖
然后在web.xml里面导入以下配置(配置的详细说明和用法我在前面文章中有写到)
创建此测试类的方法用于测试springmvc是具备自动类型转换功能的
user属性如下
show.jsp内容如下
在客户端输入如下数据
输出如下重点看日期他给转换了,说明springmvc底层以及做好了自动类型转换
我们在客户端上写的内容是在request.getparammer的所有不管你写的是数字还是什么,源数据都会是string,然后springmvc会自动转换类型为目标类型
如果我们运用springmvc没有的数据类型的话springmvc是不会提供自动转化的这时候我们需要自己创建一个类来实现,比如我们在客户端上输入2019-01-01
创建的转化类型的类需要继承接口Converter<String, Date> <,>里面的逗号前面为原类型(客户端写的默认是string类型)逗号后面为目标类型,source.split("-").length==3意思是只要客户端第4个符号是-就会进入if条件语句,DataFormat用来格式化数据的
在spring-mvc.xml文件中配置自定义转换类型的转换器如下图bean class里的内容,此内容第一句话照写,set里面的内容需要写自定义的类对应的完整路径,写完后把id里的内容写入到静态配置文件里conversion-service="conversionService"加入这句话
最后输出成功
2、数据格式化
首选创建form表单,在add.jsp里面
在show.jsp中写入要显示的内容导入spring 标签库用于接收@DateTimeFormat和@NumberFormat注解格式化的内容,spring:eval一般用于显示格式化后数据的内容
配置spring-mvc.xml用于格式化注解可以使用
@NumberFormat注解内容解释
3、数据校验
首先要导入hibernate-validator的jar包
导入依赖后可以在类上用以下注解作用在属性上
然后再如下图解释创建方法
在add.jsp中写入errors.属性是为了获取错误信息显示到客户端上,user.属性是为了把提交后的数据重新写到文本上
SpringMVC是如何做到根据参数名动态绑定参数的?
用自动绑定的参数然后你转发它会自动的转发到model里面去,model在request域里面
基于spring form标签库的实现方式:
首先要用spring form标签库需要先传入一个空的User到model中
然后在add.jsp文件中写入form标签,一定要写下图这句话,然后form:form要写这样开头,modelAttribute="user"一定要写,因为我们获取到的数据都是user里面的属性,所以我们先创建了个user用@GetMapping
Springmvc form标签,动态获取数据源
先创建@ModelAttribute用于在每个方法被调用时都会先调用这个方法,先测试list,发现value的值和label的值是一样的,但是我们开发中不想让它俩一样咋办的,需要用到map了
创建@ModelAttribute用于在每个方法被调用时都会先调用这个方法,测试map的动态数据源value的值和label的值是不一样的
这篇关于SpringMVC使用:类型转换数据格式化数据验证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!