作业题里给的sql语句用的Timestamp格式做时间。我在对应实体类中也是用Timestamp格式。
实体类Category.java关键部分代码:private Timestamp create_time;
private Timestamp update_time;
映射文件中也配置了java.sql.Timestamp格式,CategoryDao.xml文件关键部分内容:
我通过Servlet获取了category表中的所有内容,封装在List中,在前端的JSP页面通过jstl遍历的方式展示。category.jsp关键部分代码:
这时运行程序,提示如下错误:严重: Servlet.service() for servlet [jsp] threw exception
org.apache.jasper.JasperException: Unable to convert string [${dept.create_time }] to class [java.util.Date] for attribute [value]: [Property Editor not registered with the PropertyEditorManager]
at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager(JspRuntimeLibrary.java:787)
at org.apache.jsp.WEB_002dINF.biz.admin.category_jsp._jspx_meth_fmt_005fformatDate_005f0(category_jsp.java:291)
.............(下面省略)
百度了一下这个错误,找到一个相关的答案,没有说原因,只是说是在JSP顶部添加如下代码即可:
然后我在jsp页面的顶部添加了这段代码后,时间格式的内容能正常显示了。
问题来了:
为什么要添加这个代码呢?为什么会产生这样的错误?