Spring MVC自定义类型转换器!!!

使用场景

在index.jsp里面添加日期类型

 <form action="account/saveAccount" method="post">
      账户名称:<input type="text" name="name"><br/>
      账户金额:<input type="text" name="money"><br/>
      账户省份:<input type="text" name="address.provinceName"><br/>
      账户城市:<input type="text" name="address.cityName"><br/>
      开户日期:<input type="text" name="date"><br/>
      <input type="submit" value="保存">
    </form>

在pojo里面添加日期类型

public class Account implements Serializable {
    private Integer id;
    private String name;
    private Float money;
    private Address address;
    //添加日期类型
    private Date date;
    //省略get set toString方法
}  

测试

原因:我们前台传递的是字符串类型的参数,但是后台使用的是Date类型接收的。我们期望springmvc可以帮我们做数据类型的自动转换,显然没有做,所以我们需要自己自定义类型转换器。

解决方案:

定义一个类,实现Converter接口

public class DateConverter implements Converter<String, Date> {
    @Override
    public Date convert(String source) {
        try {
            DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            return format.parse(source);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

在 springmvc.xml配置文件中配置类型转换器

<!--开启springmvc注解支持-->
    <mvc:annotation-driven conversion-service="cs"></mvc:annotation-driven>
    <!-- 配置类型转换器工厂 -->
    <bean id="cs"
          class="org.springframework.context.support.ConversionServiceFactoryBean">
        <!-- 给工厂注入一个新的类型转换器 -->
        <property name="converters">
            <set>
                <!-- 配置自定义类型转换器 -->
                <bean class="com.by.converter.DateConverter"></bean>
            </set>
        </property>
    </bean>

 

相关推荐

  1. SpringMVC 中实现定义转换

    2024-01-10 12:00:07       14 阅读
  2. 定义注解加反射实现数据类型转换

    2024-01-10 12:00:07       15 阅读
  3. DataCap 定义 File 转换器

    2024-01-10 12:00:07       6 阅读
  4. 定义类型详解(2)

    2024-01-10 12:00:07       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-10 12:00:07       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-10 12:00:07       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-10 12:00:07       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-10 12:00:07       18 阅读

热门阅读

  1. SpringMVC--处理json

    2024-01-10 12:00:07       30 阅读
  2. springboot配置文件(三)加载外部配置文件

    2024-01-10 12:00:07       34 阅读
  3. 【docker】Docker Compose 使用介绍

    2024-01-10 12:00:07       43 阅读
  4. Linux C语言 53-IO复用之epoll

    2024-01-10 12:00:07       30 阅读
  5. vue element plus 快速开始

    2024-01-10 12:00:07       39 阅读
  6. 【PostgreSQL】表管理-表继承

    2024-01-10 12:00:07       34 阅读
  7. 业务记录笔记

    2024-01-10 12:00:07       36 阅读
  8. docker容器内,将django项目数据库改为postgresql

    2024-01-10 12:00:07       40 阅读
  9. QT下的几种实现modbus的库,记录

    2024-01-10 12:00:07       39 阅读