请问以下代码应该怎么调呀?String bookName="";
String bookAbstract="";
String author="";
String bookId=request.getParameter("bookId");
Connection conn=Conn.getConn();
Statement stmt=conn.createStatement();
ResultSet rs=null;
try{
String sql="select * from book_info where book_id="+bookId;
rs=stmt.executeQuery(sql);
if(rs.next()){
bookName=rs.getString("bookName");
bookAbstract=rs.getString("book_abstract");
author=rs.getString("author");
}
}catch(SQLException e){
e.getStackTrace();
}finally{
rs.close();////////报错指向这里的
stmt.close();
conn.close();
}错误信息:
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
String bookAbstract="";
String author="";
String bookId=request.getParameter("bookId");
Connection conn=Conn.getConn();
Statement stmt=conn.createStatement();
ResultSet rs=null;
try{
String sql="select * from book_info where book_id="+bookId;
rs=stmt.executeQuery(sql);
if(rs.next()){
bookName=rs.getString("bookName");
bookAbstract=rs.getString("book_abstract");
author=rs.getString("author");
}
}catch(SQLException e){
e.getStackTrace();
}finally{
rs.close();////////报错指向这里的
stmt.close();
conn.close();
}错误信息:
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
}finally{
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
首先写的比较乱啊
把model层代码写到业务层了啊
finally{
if(rs!=null)
rs.close();
if(stmt!=null)
stmt.close();
if(conn!=null)
conn.close();
}
还有rs.getString("bookName"); 数据库里面的字段是这个bookName吗。不是的话,你自己改下。
rs.close();////////报错指向这里的
可能rs是null吧