代码如下 public String[] querySelectedColumnName(String name,Long userid) throws Exception {
Connection conn=null;
Statement stm=null;
String sql="";
String[] selectcloumn=new String[]{};
String scloumn="";
ResultSet rs=null;
try {
conn=this.getHibernateTemplate().getSessionFactory().openSession().connection();
stm = conn.createStatement();
sql+="select SELECTCOLUMNNAME from t_diy where TABLENAME='"+name+"' and USERID="+userid+" and rownum<=1";
System.out.println("sql:"+sql);
rs=stm.executeQuery(sql);
if(rs!=null && rs.next())
{
scloumn+=rs.getString(1);
selectcloumn=scloumn.split(",");
}
}
catch(Exception ex)
{ex.printStackTrace();}
finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stm != null){
stm.close();
stm = null;
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
System.err.println(e.getMessage());
}
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return selectcloumn;
}
一开始报 ” 用尽的 Resultset“
if(rs.next())=》if(rs!=null && rs.next())又开始报java.lang.NullPointerException
at oracle.jdbc.driver.OracleStatement.clearDefines(OracleStatement.java:1176)
at oracle.jdbc.driver.OracleStatement.end_of_result_set(OracleStatement.java:3150)
at oracle.jdbc.driver.OracleResultSetImpl.internal_close(OracleResultSetImpl.java:1474)
at oracle.jdbc.driver.OracleResultSetImpl.close(OracleResultSetImpl.java:92)
at org.apache.commons.dbcp.DelegatingResultSet.close(DelegatingResultSet.java:151)
at com.wprss.dao.impl.UserDAOImpl.queryColumnName(UserDAOImpl.java:494)
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:585)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
at $Proxy2.queryColumnName(Unknown Source)
at com.wprss.action.UserAction.showColumnName(UserAction.java:729)
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:585)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.RightFilter.doFilter(RightFilter.java:35)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.NoCacheFilter.doFilter(NoCacheFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:831)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:639)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1203)
at java.lang.Thread.run(Thread.java:595)sql肯定没问题!谢
Connection conn=null;
Statement stm=null;
String sql="";
String[] selectcloumn=new String[]{};
String scloumn="";
ResultSet rs=null;
try {
conn=this.getHibernateTemplate().getSessionFactory().openSession().connection();
stm = conn.createStatement();
sql+="select SELECTCOLUMNNAME from t_diy where TABLENAME='"+name+"' and USERID="+userid+" and rownum<=1";
System.out.println("sql:"+sql);
rs=stm.executeQuery(sql);
if(rs!=null && rs.next())
{
scloumn+=rs.getString(1);
selectcloumn=scloumn.split(",");
}
}
catch(Exception ex)
{ex.printStackTrace();}
finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stm != null){
stm.close();
stm = null;
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
System.err.println(e.getMessage());
}
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return selectcloumn;
}
一开始报 ” 用尽的 Resultset“
if(rs.next())=》if(rs!=null && rs.next())又开始报java.lang.NullPointerException
at oracle.jdbc.driver.OracleStatement.clearDefines(OracleStatement.java:1176)
at oracle.jdbc.driver.OracleStatement.end_of_result_set(OracleStatement.java:3150)
at oracle.jdbc.driver.OracleResultSetImpl.internal_close(OracleResultSetImpl.java:1474)
at oracle.jdbc.driver.OracleResultSetImpl.close(OracleResultSetImpl.java:92)
at org.apache.commons.dbcp.DelegatingResultSet.close(DelegatingResultSet.java:151)
at com.wprss.dao.impl.UserDAOImpl.queryColumnName(UserDAOImpl.java:494)
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:585)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
at $Proxy2.queryColumnName(Unknown Source)
at com.wprss.action.UserAction.showColumnName(UserAction.java:729)
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:585)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:38)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.RightFilter.doFilter(RightFilter.java:35)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.wprss.util.NoCacheFilter.doFilter(NoCacheFilter.java:23)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:831)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:639)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1203)
at java.lang.Thread.run(Thread.java:595)sql肯定没问题!谢
我铁定就返回一条结果 也得用while吗 是这样吗
{
scloumn+=rs.getString(1);
}
selectcloumn=scloumn.split(",");