Spring注入Date类型的三种方法总结
Spring注入Date类型的三种方法总结
测试Bean:
publicclassDateBean{ privateDatebirthday; publicDategetBirthday(){ returnbirthday; } publicvoidsetBirthday(Datebirthday){ this.birthday=birthday; } }
方式1:利用SimpleDateFormat的构造方法注入
方式2:纯配置,先自定义CustomDateEditor,再转换类型
方式3:先用一个类重写PropertyEditorSupport的setAsText方法,再在配置文件中,配置转换类型就可以了,跟上面方法类似
publicclassMyDatePropertyEditorextendsPropertyEditorSupport{ privateStringformat; publicStringgetFormat(){ returnformat; } publicvoidsetFormat(Stringformat){ this.format=format; } //text为需要转换的值,当为bean注入的类型与编辑器转换的类型匹配时就会交给setAsText方法处理 publicvoidsetAsText(Stringtext)throwsIllegalArgumentException{ SimpleDateFormatsdf=newSimpleDateFormat(format); try{ this.setValue(sdf.parse(text)); }catch(ParseExceptione){ e.printStackTrace(); } } }
测试:
publicclassDateTest{ @Test publicvoidtestName()throwsException{ ApplicationContextcontext=newClassPathXmlApplicationContext( "applicationContext.xml"); DateBeanbean=(DateBean)context.getBean("datebean"); System.out.println(bean.getBirthday()); } }
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!