当前位置:编程学习 > JAVA >>

不会请指教

parm3=15130401&parmvalue3=2013-5-14&time=Wed%20May%2015%2016:21:55%20UTC+0800%202013
2013.05.14
Hibernate: select dep_id,count(*),date,max(date),min(date) from operatorrecord where pro_id in (select id from product where num = '15130401') and date like'2013.05.14%' and isTrue=1 group by dep_id
2013-5-15 16:33:10 org.logicalcobwebs.proxool.HouseKeeper sweep
警告: #0003 was active for 347773 milliseconds and has been removed automaticaly. The Thread responsible was named 'http-8080-1'.
2013-5-15 16:33:10 org.apache.struts.action.RequestProcessor processException
警告: Unhandled Exception thrown: class org.hibernate.HibernateException
2013-5-15 16:33:10 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.sql.SQLException: Operation not allowed after ResultSet closed
at com.mysql.jdbc.ResultSet.checkClosed(ResultSet.java:5310)
at com.mysql.jdbc.ResultSet.getMetaData(ResultSet.java:1597)
at org.hibernate.loader.custom.CustomLoader$Metadata.<init>(CustomLoader.java:521)
at org.hibernate.loader.custom.CustomLoader.autoDiscoverTypes(CustomLoader.java:494)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
at org.hibernate.loader.Loader.doQuery(Loader.java:662)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
at org.hibernate.loader.Loader.doList(Loader.java:2211)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2095)
at org.hibernate.loader.Loader.list(Loader.java:2090)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1695)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:150)
at cn.com.xiou.product.persist.ImpDAO.OperatorRecordDAOImp.countByDateDep(OperatorRecordDAOImp.java:268)
at cn.com.xiou.product.view.struts.action.action.ProductManageAction.countByNumDate(ProductManageAction.java:1721)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
at org.apache.struts.actions.MappingDispatchAction.execute(MappingDispatchAction.java:169)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at cn.com.xiou.product.view.struts.action.CloseSessionFilter.doFilter(CloseSessionFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
这个是错误信息 --------------------编程问答--------------------
	OperatorRecordDADImp

public List<Object> countByDateDep(String date,String num){
Session s = null;
s = HbnUtil.openSession();
s.beginTransaction();
// String sql = "select dep_id,count(*),date,max(date),min(date) from operatorrecord where pro_id in " +
// "(select id from product where num = '"+num+"') and a.date like '"+date+"' and a.isTrue=1 group by dep_id;";
String sql = "select dep_id,count(*),date,max(date),min(date) from operatorrecord where pro_id in " +
"(select id from product where num = '"+num+"') and date like'"+date+"%' and isTrue=1 group by dep_id";

//select dep_id,count(*),date,max(date),min(date) from operatorrecord where pro_id in (select id from product where num = '"+num+"') and date ='"+date+"' and isTrue=1 group by dep_id;
List<Object> list = s.createSQLQuery(sql).list() ;
s.getTransaction().commit();
return list;
}


             ProductManagerAction



public ActionForward countNumByDep(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
System.out.println(request.getQueryString());
OperatorRecordServer ors = new OperatorRecordServer();
try {
String arr[] = URLDecoder.decode(request.getQueryString(), "utf-8")
.split("&");
String date = "";
if (arr[1].split("=").length > 1) {
String str[] = arr[1].split("=")[1].split("-");
if (str[1].length() < 2) {
str[1] = "0" + str[1];
}
if (str[2].length() < 2) {
str[2] = "0" + str[2];
}
date = str[0] + "." + str[1] + "." + str[2];
}
String depart = arr[0].split("=")[1];
List<Object> list = ors.queryNumByDep(date, Integer
.parseInt(depart));
request.setAttribute("NumCount", list);
return mapping.findForward("NumByDep");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (NumberFormatException e) {
sendMsg(response, "输入正确的格式");
} catch (SelectException e) {
e.printStackTrace();
}
return null;
}
这个是2个JAVA文件的代码,错误信息是错在第二代代码上 --------------------编程问答-------------------- 无奈飘过~~~~ --------------------编程问答-------------------- 查询还需要开启事务? --------------------编程问答-------------------- 查询不需要commit,
错误说明在查询结果集关闭之后不能操作。 --------------------编程问答-------------------- List<Object> list = s.createSQLQuery(sql).list() ;红色部分返回的应该是一个object数组。改为createQuery或者createSQLQuery(sql).addEntity(Product.class).list();红色部分是你对应的那一个实体类。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,