FactoryBean 实战练习 - 注入自定义 Date

devtools/2024/9/29 6:59:53/
  • java.util.Date在Spring中被当做简单类型,简单类型在注入的时候可以直接使用value属性或value标签来完成。
  • 但是对于Date类型来说,采用value属性或value标签赋值的时候,对日期字符串的格式要求非常严格,必须是这种格式的:Mon Oct 10 14:30:26 CST 2022。其他格式是不会被识别的。

采用工厂方法模式以非简单类型的方式通过 FactoryBean 接口实例化,我们可以在工厂方法中创建Date对象,同时还可以对Date对象进行加工,从而创建我们需要格式的日期对象。

java">/*** ClassName: DateFactoryBean* Package: cw.spring.study.bean* Description:* DateFactoryBean 这是一个工厂Bean,* 用于协助Spring创建Date对象*/
public class DateFactoryBean implements FactoryBean<Date> {private String dateStr; // 日期字符串(简单类型)public void setDateStr(String dateStr) {this.dateStr = dateStr;}@Overridepublic Date getObject() throws Exception {SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");return dateFormat.parse(dateStr);}@Overridepublic Class<?> getObjectType() {return null;}
}
java"><!-- 利用工厂Bean DateFactoryBean 创建指定日期的Date对象 -->
<bean id="date1" class="cw.spring.study.bean.DateFactoryBean"><property name="dateStr" value="2023-05-22"/>
</bean><bean id="student" class="cw.spring.study.bean.Student"><property name="birth" ref="date1"/>
</bean>


http://www.ppmy.cn/devtools/104925.html

相关文章

Linux创建sysfs属性节点 - DEVICE_ATTR宏、device_create_file()、sysfs_create_group()

目录 简介&#xff1a; 一、DEVICE_ATTR介绍 1、DEVICE_ATTR宏 1.1 参数说明 1.2 调用方法 二、sysfs创建属性文件 1、创建一个sysfs属性文件 1.1 device_create_file()函数 1.2 device_create_file()实例 2、创建多个sysfs属性文件 2.1 sysfs_create_group()函数 2…

pda移动护理终端医用手持机

随着物联网技术的发展&#xff0c;智能设备之间形成了紧密的网络互联。 医疗行业越来越注重智能设备的使用&#xff0c;医用手持机可以采集病人、药品、材料等信息&#xff0c;很大程度地改善了医院患者的管理&#xff0c;进一步提升医护人员的工作效率。 医护人员通过使用pda移…

易语言系列——日志系统

想给项目软件写一个日志系统,各个论坛找了半天,没找到合适的,自己写了个。 主要实现以下内容: 1.单线程和多线程日志写入 2.高速IO,保证大数据量下日志写入不卡顿 3.日志直接写入txt文件中,软件运行过程中可以打开和复制 4.自动删除过期的日志文件 5.每日的日志以时…

如何开Stand Up Meeting

最近在做公司的第一个SAP Rise项目&#xff0c;每周要和德国、波兰的用户和德国、奥地利、印度、中国的SAP顾问开2次半小时的Stand Up Meeting&#xff0c;参会人数有75人之多。 对于这样的会议&#xff0c;作为组织者要在第一次开会的时候就宣布开会的原则&#xff0c;只关注…

在Ubuntu24.04上安装多主多从的高可用Kubernetes节点

前言 因为镜像拉取失败&#xff0c;所以好多小伙伴说calico网络插件安装失败。之前写过CentOS7上安装多主节点的Kubernets集群&#xff0c;而CentOS7又停止维护了。所以借着在Ubuntu上安装多主的Kubernetes集群的机会&#xff0c;使用国内镜像安装calico网络插件。 视频教程地…

320mm*160mmP1.86超微小间距LED显示屏COB与GOB的工艺区别

随着科技的飞速发展&#xff0c;320mm*160mm P1.86超微小间距LED显示屏在COB与GOB技术之间的选择&#xff0c;不仅体现了对画质与性能的极致追求&#xff0c;更彰显了技术创新的无限可能。相较于GOB工艺&#xff0c;COB技术凭借其直接将LED芯片封装于PCB板上的独特优势&#xf…

概率论原理精解【11】

文章目录 测度论拓扑基定义性质应用拓扑基生成拓扑的过程1. 拓扑基的定义2. 由拓扑基生成拓扑3. 例子说明 4. 总结例子 子基基础例子构造由子基生成的拓扑基础拓扑子基的定义解释例子总结 子基&#xff08;subbase&#xff09;是一个用于生成拓扑的较弱的工具定义构造过程性质示…

ET6框架(一)介绍及环境部署

文章目录 一、什么是ET框架&#xff1f;二、ET框架特色&#xff1a;三、开发环境准备&#xff1a;四、.Net Core下载安装五、安装Visual Studio六、下载Mongodb七、安装Robo 3T八、下载ET版本分支 一、什么是ET框架&#xff1f; 1.ET(客户端&#xff0c;服务器端)是一个开源的…