2.spring非自动类型转换

对bean属性的注入过程中,如果一些类型不能注入,则可以类型转换,自定义转换该类型的转换器,如上面的birthday属性是日期性的,spring 不能自动注入该类型,则自定义转换器如下:

public class myDateEditor extends PropertyEditorSupport {

    @Override

    public void setAsText(String text) throws IllegalArgumentException {

       try {

           SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd");

           Date date = format.parse(text);

           setValue(date);

       } catch (ParseException e) {

           e.printStackTrace();

           new IllegalAccessException(e.getMessage());

       }

    }

}

 

 

 

 

 

 

配置文件如下 :只要这样配置后spring 遇到java.util.Date类型后会自动调用上面的转换器,注入bean属性

 

    <bean id="myeditor"

       class="org.springframework.beans.factory.config.CustomEditorConfigurer">

       <property name="customEditors">

           <map>

              <entry key="java.util.Date">

                  <bean id="dateEditor" class="edu.yzu.editor.myDateEditor" />

              </entry>

           </map>

       </property>

    </bean>

posted @ 2010-05-03 17:27  沉兮  阅读(344)  评论(0编辑  收藏  举报