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

JSP代码问题出错

我的代码是这样的: <% int id=0; String sql="select username from yhxx.liuyan where id=?"; id=Integer.parseInt(request.getParameter("id")); Class.forName("org.gjt.mm.mysql.Driver"); Connection con=DriverManager.getConnection("jdbc:mysql://localhost:8080/yhxx","root",""); PreparedStatement st=con.prepareStatement(sql); String sql1="delete from yhxx.liuyan where id=?"; st.setInt(1,id); st.executeUpdate(sql1); response.sendRedirect("liuxian.jsp"); %> 然后Tomcat出错是这样的: org.apache.jasper.JasperException: An exception occurred processing JSP page /delete.jsp at line 11 8: <% 9: int id=0; 10: String sql="select id from yhxx.liuyan where id=?"; 11: id=Integer.parseInt(request.getParameter("id")); 12: Class.forName("org.gjt.mm.mysql.Driver"); 13: Connection con=DriverManager.getConnection("jdbc:mysql://localhost:8080/yhxx","root",""); 14: PreparedStatement st=con.prepareStatement(sql); Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:551) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) root cause java.lang.NumberFormatException: null java.lang.Integer.parseInt(Unknown Source) java.lang.Integer.parseInt(Unknown Source) org.apache.jsp.delete_jsp._jspService(delete_jsp.java:65) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:391) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 怎么解决这个问题啊?
追问:
能不能说下怎么解决啊,空又是什么意思?不太明白
首先你通过request.getParameter("id");
来获取request中的id属性的数据
返回的应该是一个字符串
然后你通过Integer.parseInt方法把字符串转型为integer类型
但是一旦给这个方法传入的参数不可转换或者是null的时候就会报错
你的错误信息显示你传入的参数为null
也就是说你通过request.getParameter("id");并没有获取到期望获得的id值
得到的就会是null对象
Integer.parseInt(null)就会报出你这个错误
所以你要做的就是解决获取不到id值的问题
是否将id属性放置到request对象中 或者名字是否写错等等。。。
仔细检查一下吧
答案:request.getParameter("id");
应该是null
检查一下为何没能获取到id的值吧
其他:异常都不用捕获 或 抛出的么???
ex.printStackTrace();   
exception.printStackTrace();
将异常进行捕获,在加上printStackTrace();试试看.... sql 语句就不对  如果是查询的怎么也得是  select * from * 的..连from都没有怎么查 sql = "select sysdate() sysdate ;";
改为:
 sql = "select sysdate from dual"; try{
}catch{
} 有null值啊,是不是查询没数据? 有Null值
delete_jsp.java:65

上一个:JSP代码中html:button 这段代码什么意思
下一个:我在做Jsp用代码连接Access2003,在验证用户名是提示我The method parameter(String) is undefined

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,