springmvc实现自定义类型转换器示例
springmvc除了自带的部分类型转换之外,还可以自定义类型转换器,按照以下步骤:
1、写一个类实现Converter接口
package com.hy.springmvc.entities; import org.springframework.core.convert.converter.Converter; import com.google.gson.Gson; public class DepartmentConvertor implements Converter<String, Department> { @Override public Department convert(String source) { System.out.println("com.hy.springmvc.entities.DepartmentConvertor: " + source); Department department = new Gson().fromJson(source, Department.class); return department; } }
2、引入ConversionServiceFactoryBean,将自己写的类注入到bean
<bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters"> <list> <bean class="com.hy.springmvc.entities.DepartmentConvertor"></bean> </list> </property> </bean>
3、在<mvc:annotation-driven>里面标注属性conversion-service
<mvc:annotation-driven conversion-service="conversionService"> </mvc:annotation-driven>
这样在类型转化的过程中就会自动调用这个转换器
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
SpringMVC中Json数据格式转换
1 @RequestBody 作用: @RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容转换为json.xml等格式的数据并绑定到controller方法的参数上. List.action?id=1&name=zhangsan&age=12 本例子应用: @RequestBody注解实现接收http请求的json数据,将json数据转换为java对象 2 @ResponseBody 作
-
SpringMVC中日期格式的转换
解决日期提交转换异常的问题 由于日期数据有很多种格式,所以springmvc没办法把字符串转换成日期类型.所以需要自定义参数绑定.前端控制器接收到请求后,找到注解形式的处理器适配器,对RequestMapping标记的方法进行适配,并对方法中的形参进行参数绑定.在springmvc这可以在处理器适配器上自定义Converter进行参数绑定.如果使用<mvc:annotation-driven/>可以在此标签上进行扩展. 1.自定义DataConvertor类, 并实现Convertor接口 p
-
SpringMVC对日期类型的转换示例
在做web开发的时候,页面传入的都是String类型,SpringMVC可以对一些基本的类型进行转换,但是对于日期类的转换可能就需要我们配置. 1.如果查询类使我们自己写,那么在属性前面加上@DateTimeFormat(pattern = "yyyy-MM-dd") ,即可将String转换为Date类型,如下 @DateTimeFormat(pattern = "yyyy-MM-dd") private Date createTime; 2.如果我们只负责we
-
Spring MVC登录注册以及转换json数据
项目结构; 代码如下: BookController package com.mstf.controller; import javax.servlet.http.HttpServletResponse; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.codehaus.jackson.map.ObjectMapper; import com.mstf.
-
深入理解Spring MVC的数据转换
本文主要给大家介绍了关于Spring MVC数据转换的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 数据绑定 SpringMVC负责将request中的信息以一定的方式转换并绑定到处理方法的参数上.整个过程的处理核心是由DataBinder完成.转换流程如下: 1.DataBinder从ServletRequest中获取参数信息: 2.DataBinder获取处理方法的参数: 3.DataBinder调用ConversionService组件数据类型转换和数据格式化
-
springMVC4之强大类型转换器实例解析
我们以自定义格式转换器的实现思路,来理解新架构的类型转换器的使用方法,同时在实际开发中,我们可能会有自己的格式转换需求,这个时候我们也可以通过自定义格式转换器来完成这些个性化需求. 自定义格式转换器 完成自定义转换器需要实现以下三个中的任意一个接口:Convertor<S,T>.GenericConvertor或ConvertorFacoty.下面我们对这些接口进行逐一分析: 1. Convertor<S,T> 这是最为简单的一个接口,定义了从源类到目标类的转换方法.该接口的定义如
-
SpringMVC实现自定义类型转换器
我们在使用SpringMVC时,常常需要把表单中的参数映射到我们对象的属性中,我们可以在默认的spring-servlet.xml加上如下的配置即可做到普通数据类型的转换,如将String转换成Integer和Double等: <mvc:annotation-driven /> 或 复制代码 代码如下: <bean id="conversionService" class="org.springframework.format.support.Formatt
-
springmvc实现自定义类型转换器示例
springmvc除了自带的部分类型转换之外,还可以自定义类型转换器,按照以下步骤: 1.写一个类实现Converter接口 package com.hy.springmvc.entities; import org.springframework.core.convert.converter.Converter; import com.google.gson.Gson; public class DepartmentConvertor implements Converter<String,
-
SpringMVC自定义类型转换器实现解析
这篇文章主要介绍了SpringMVC自定义类型转换器实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 页面录入的字符串:2019/12/05可以映射到实体的日期属性上,但是如果是录入2019-12-05就会报错400 bad request,想要以2019-12-05日期格式的方式映射到实体的日期属性上,需要自定义类型转换器,主要步骤如下: 1. 自定义类实现Convertro<S,T>接口 2.Springmvc.xml中配置Conv
-
Springmvc自定义类型转换器实现步骤
一.什么是springmvc类型转换器? 在我们的ssm框架中,前端传递过来的参数都是字符串,在controller层接收参数的时候springmvc能够帮我们将大部分字符串类型的参数自动转换为我们指定的参数,这就是springmvc为我们提供的类型转换器.但是springmvc提供的类型转换器只能够转换指定格式的参数,例如:我们参数中传递time=2020/08/18,在controller中我们就可以通过Date类型的参数接收它,springmvc能够自动将该日期字符串转换为日期对象.但是如
-
Struts2学习教程之自定义类型转换器的方法
前言 为什么要在struts2中类型转换器? :struts2 只能够对java中的8种原态类型以及String.Date等常用类型提供自动转换. 但是这绝对不能满足我们的需求,如果我们想将页面的数据整合成一个javabean.到Action中去时Action得到的是一个对象,那么这个需求就需要我们使用类型转换器. 大部分时候,使用Struts2框架提供的内建的类型转换器和基于OGNL的类型转换器,就能满足大部分的类型转换需求:但是也存在一些特殊的情况下,可能需要将一个指定格式的字符串转换成一个
-
Mybatis自定义类型转换器的使用技巧
一般情况下,mybatis自带的类型转换器已经足够用了,但是需求永无止境,自定义类型转换器还是学一下吧,指不定哪天会用上. 举个没啥用的示例 javabean如下: public class User { private Integer id; private Message message; } public class Message { private Integer id; private String address; private String job; } 数据库User表如下:
-
MyBatis自定义类型转换器实现加解密
需求场景:当数据库中保存的部分数据需要加密,页面需要正常显示时.这是就需要我们自定义类型转换器,在Mybatis执行SQL得到结果时,通过自定义类型转换器将CHAR或者VARCHAR2进行加解密处理,Java代码如下: /**自定义typeHandler<br/> * 1 插入数据库, 加密 * 2 查询,解密 * @author Administrator * */ public class CryptTypeHandler implements TypeHandler<CryptTy
-
Mybatis实现自定义类型转换器TypeHandler的方法
先给大家简单介绍下mybatis MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录. 此文其实是java操作Oracle类型XMLType总结二:使用Mybatis附带的一篇小结. Mybatis实现自定义的转换器,
-
Java中的BaseTypeHandler自定义类型转换器的使用
目录 简述 通用的类型转换器(存在一些问题) 定制类型转换器 简述 mysq5.7之后新增了json类型,但是在使用的过程中,Json数组中的值小于Integer.MAX_VALUE,则反序列化时会转成List类型,假设我们用的是List类型的话就会碰到类型转换错误的异常. 通用的类型转换器(存在一些问题) 此方法可以返回对象的calss,自动转成对应的类型,但是在碰到List 类型的时候,由于calss只能获取到java.util.List类型无法获取List里对象的类型,就会导致会使用fas
-
java自定义枚举转换器示例
java自定义枚举转换器 复制代码 代码如下: import org.apache.commons.beanutils.Converter; /** * 自定义枚举转换器 * * */public class MyEnumConverter implements Converter { @Override // 将value 转换为 c类型 --- 枚举通用转换器 public Object convert(Class c, Object value) { String strVal =
随机推荐
- 攻击方式学习之SQL注入(SQL Injection)第1/3页
- Perl eval函数使用实例
- 当某IP 连接我机器的3389端口 报警的脚本
- ASP.NET通过Remoting service上传文件
- JS实现线性表的顺序表示方法示例【经典数据结构】
- 微信小程序实战之自定义toast(6)
- js+css3制作时钟特效
- ASP.NET中后台注册js脚本使用的方法对比
- Python中的深拷贝和浅拷贝详解
- JS复制特定内容到粘贴板
- 使用AJAX返回WebService里的集合具体实现
- 不用float实现div模块居中布局
- Lua中让回调函数支持回调对象方法的解决方法
- shell脚本学习指南[二](Arnold Robbins & Nelson H.F. Beebe著)
- jQuery on()方法绑定动态元素的点击事件无响应的解决办法
- 技巧:通过改注册表给网上邻居加把锁
- C#启动进程的几种常用方法
- C# BackgroundWorker用法详解
- PHP数字和字符串ID互转函数(类似优酷ID)
- 浅谈Spring单例Bean与单例模式的区别