可能对于刚入门的朋友来说,页面的日期数据与数据库的日期数据之间的转换比较头疼。在此分享下自己在学习过程中的一些经验。
一般情况下,我对数据库数据的更新是以对象的方式写入的,所以可以事先定义一个JavaBean,在JavaBean中可能会存在Date类型的变量。从Mysql数据库获得日期数据,并转换成一个日期类型的Date变量是这样的。先从数据库通过getDate()方法读取一个日期,然后调用toString()方法转换为字符串,最后用SimpleDateFormat中的parse()方法解析该字符串为一个Date类型。
在JSP页面显示的话,可以借助JSTL标签实现,通过<c:set/>标签先定义一个变量,再利用<fmt:formatDate/>标签格式化日期显示,其中会用到类似${}这样的EL表达式。
注意:(1)在借助SimpleDateFormat解析字符串的时候记得在实例化对象时加入解析格式。例:"yyyy-HH-dd",否则可能会抛解析错误异常。<fmt:formatDate/>标签也如此。
(2)如果在开发中遇到问题,可以先写个Test类测试解析是否正确,或者写个JSP页面测试<fmt:fomatDate/>是否正确,两者都正确了再合并。
一般情况下,我对数据库数据的更新是以对象的方式写入的,所以可以事先定义一个JavaBean,在JavaBean中可能会存在Date类型的变量。从Mysql数据库获得日期数据,并转换成一个日期类型的Date变量是这样的。先从数据库通过getDate()方法读取一个日期,然后调用toString()方法转换为字符串,最后用SimpleDateFormat中的parse()方法解析该字符串为一个Date类型。
在JSP页面显示的话,可以借助JSTL标签实现,通过<c:set/>标签先定义一个变量,再利用<fmt:formatDate/>标签格式化日期显示,其中会用到类似${}这样的EL表达式。
注意:(1)在借助SimpleDateFormat解析字符串的时候记得在实例化对象时加入解析格式。例:"yyyy-HH-dd",否则可能会抛解析错误异常。<fmt:formatDate/>标签也如此。
(2)如果在开发中遇到问题,可以先写个Test类测试解析是否正确,或者写个JSP页面测试<fmt:fomatDate/>是否正确,两者都正确了再合并。