zoukankan      html  css  js  c++  java
  • 013 类型转换器

    一 . 概述

      在前面说参数映射的时候,有一个现象,就是前台传递的参数可以进行类型转换然后映射到后台的参数之上.

      我们知道,前台传递的所有的参数都是string类型,那么这个转换的动作是说完成的呢?

      答案就是类型转换器.


    二 . 类型转换器

      我们首先看一类型转换器的接口接口:  

    public interface Converter<S, T> {
    
        T convert(S source);
    
    }

    这个接口就是将源类型转换为目标类型.

      这个接口本身就是十分简单的.


    三 . 自定义类型转换器  

    public class DateConverter implements Converter<String, Date>{
    
        private static final SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd");
        @Override
        public Date convert(String source) {
            //将字符串类型转换为日期类型
            try {
                return sim.parse(source);
            } catch (ParseException e) {
                e.printStackTrace();
            }
            return null;
        }
    
    }

     当我们创建了一个类型转换器之后,我们就需要该类型转换器注册.  

    <mvc:annotation-driven conversion-service="converterService"></mvc:annotation-driven>
        <!-- 注册类型转换服务工厂Bean -->
        <bean id="converterService" class="org.springframework.context.support.ConversionServiceFactoryBean">
            <property name="converters">
                <set>
                    <bean class="com.trek.converter.DateConverter"></bean>
                </set>
            </property>
        </bean>

    测试代码 :  

    @RequestMapping("/date")
        public String dateConverter(Date date) {
            System.out.println(date);
            return "/WEB-INF/jsp/success.jsp";
        }

    现在我们前台传递的日期字符串的参数就能转换到了Date类型之中.

  • 相关阅读:
    【SQL】SQL Server登录常见问题
    【毒思】纪念我死去的爱情
    【毒思】化蝶双飞
    VS2013常用快捷键你敢不会?
    SSIS 更新变量
    一次SSIS Package的调试经历
    binary 和 varbinary 用法全解
    Execute SQL Task 第二篇:返回结果集
    OLEDB 命令转换组件的用法
    脚本组件的用法
  • 原文地址:https://www.cnblogs.com/trekxu/p/9129346.html
Copyright © 2011-2022 走看看