Diferencia entre revisiones de «CustomDateEditor»
 (→Ver también)  | 
				|||
| Línea 43: | Línea 43: | ||
==Ver también==  | ==Ver también==  | ||
* [http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/beans/propertyeditors/CustomDateEditor.html Api de CustomDateEditor]  | * [http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/beans/propertyeditors/CustomDateEditor.html Api de CustomDateEditor]  | ||
| + | |||
| + | [[Category:Spring Framework]]  | ||
Revisión del 14:55 22 abr 2010
Su funcionalidad consiste en poder declarar un Date como String mediante la inyección de dependecias y que sea Spring quien haga toda la transformaación.
Lo primero que debemos hacer es crear un bean que le diga a Spring que editores de propiedades vamos a usar en nuestra aplicación.
Configuración del CustomEditorConfigurer
   <bean id="customEditorConfigurer"
       class="org.springframework.beans.factory.config.CustomEditorConfigurer">
       <property name="customEditors">
           <map>
               <entry key="java.util.Date">
                   <bean class="org.springframework.beans.propertyeditors.CustomDateEditor">
                       <constructor-arg index="0">
                           <bean class="java.text.SimpleDateFormat">
                               <constructor-arg value="dd/MM/yyyy"/>
                           </bean>
                       </constructor-arg>
                       <constructor-arg index="1" value="false"/>
                   </bean>
               </entry>
           </map>
       </property>
   </bean>
CustomEditorConfigurer es un BeanPostProcessor que carga los editores de propiedades en la BeanFactory. Cuando Spring detecte que tiene una propiedad del tipo java.util.Date llamará a su editor de propiedades correspondiente, en este caso CustomDateEditor. El constructor de CustomDateEditor recibe dos parámetros un DateFormat, que permite definir el formato de fecha esperado y un booleano "allowEmpty" para ver si admite el valor nulo.
Configuración de nuestro Bean
<bean id="dao.InvasorDao" class="com.dosideas.dao.impl.InvasorDaoImpl">
<property name="fechaInvacion" value="01/01/1980"/> </bean>
Donde el atributo fechaInvacion es del tipo java.util.Date