一:前言
这是我在新的公司写的第一份博客吧,来了又一个星期了吧,但是在来的那几天我真的很迷茫的感觉这里是很不适合我的样子,而且我又是来实习的,我很不愿意啊,自己做的又是java web,最原始的servlet,代码和混乱,这让我很无奈啊,所以我在星期一的时候开始提出辞职,然后老大找我谈了谈,说这个项目是我们外包给别人的,我们只是在他们没空的时候改一改罢了,这样说至少让我感觉到还可以接受,最后我又提了下我自己不想实习,提高工资的事情也通过了,公司的干事效率还是很高的啊。虽然做的是servlet,但是这个东西还是又学到了一些其他知识。现在我们就想说下。
二:内容
自己在做servlet的时候,比如说我们的vo中有一个birthday字段,是Date类型, 我们在从数据库取出Date类型的数据时,rs.getDate(1)的时候我们取到的其实是一个java.sql.Date类型的日期,你直接设置到vo类中也是行的,但是我是在把其转换为JSON数据时遇到了问题。报如下的错误;
1 net.sf.json.JSONException: java.lang.reflect.InvocationTargetException 2 at net.sf.json.JSONObject._fromBean(JSONObject.java:987) 3 at net.sf.json.JSONObject.fromObject(JSONObject.java:168) 4 at net.sf.json.AbstractJSON._processValue(AbstractJSON.java:265) 5 at net.sf.json.JSONObject._processValue(JSONObject.java:2808) 6 at net.sf.json.JSONObject.processValue(JSONObject.java:2874) 7 at net.sf.json.JSONObject.setInternal(JSONObject.java:2889) 8 at net.sf.json.JSONObject.setValue(JSONObject.java:1577) 9 at net.sf.json.JSONObject._fromBean(JSONObject.java:934) 10 at net.sf.json.JSONObject.fromObject(JSONObject.java:168) 11 at net.sf.json.AbstractJSON._processValue(AbstractJSON.java:265) 12 at net.sf.json.JSONArray._processValue(JSONArray.java:2514) 13 at net.sf.json.JSONArray.processValue(JSONArray.java:2539) 14 at net.sf.json.JSONArray.addValue(JSONArray.java:2526) 15 at net.sf.json.JSONArray._fromCollection(JSONArray.java:1057) 16 at net.sf.json.JSONArray.fromObject(JSONArray.java:123) 17 at net.sf.json.JSONArray.fromObject(JSONArray.java:105) 18 at com.statistics.servlet.StatisticsServlet.doGet(StatisticsServlet.java:60) 19 at javax.servlet.http.HttpServlet.service(HttpServlet.java:620) 20 at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 21 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 22 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 23 at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 24 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 25 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 26 at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124) 27 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 28 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 29 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) 30 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) 31 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503) 32 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) 33 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 34 at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) 35 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) 36 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) 37 at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070) 38 at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) 39 at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314) 40 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 41 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 42 at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 43 at java.lang.Thread.run(Unknown Source) 44 Caused by: java.lang.reflect.InvocationTargetException 45 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 46 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 47 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 48 at java.lang.reflect.Method.invoke(Unknown Source) 49 at org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:1773) 50 at org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1132) 51 at org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:686) 52 at org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715) 53 at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290) 54 at net.sf.json.JSONObject._fromBean(JSONObject.java:918) 55 ... 41 more 56 Caused by: java.lang.IllegalArgumentException 57 at java.sql.Date.getHours(Unknown Source) 58 ... 51 more