请教大家jsp数据库连接(Myeclipse+MySQL)出现空指针问题(java.lang.NullPointerException)
本人使用(Myeclipse+MySQL),jdbc惊醒数据库连接出现空指针问题(java.lang.NullPointerException)。具体代码如下1、在Con...
本人使用(Myeclipse+MySQL),jdbc惊醒数据库连接出现空指针问题(java.lang.NullPointerException)。
具体代码如下
1、在Conn类中
public Conn(){
try{
Class.forName("com.MySQL.jdbc.Driver");
}catch(java.lang.ClassNotFoundException e){
System.err.println(e.getMessage());
}
}
/*
* 查询
* */
public ResultSet executeQuery(String sql){
try{
conn=DriverManager.getConnection("jdbc:MySQL://localhost:3306/testDB?useUnicode=true&characterEncoding=UTF-8","root",null);
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLException ex){
System.err.println(ex.getMessage());
}
return rs;
}
2、javabean中
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>
<jsp:useBean id="c" scope="page" class="com.ch6.Conn"/>
<%
String SQLSTR="SELECT * FROM USER ORDER BY id DESC";
ResultSet RS=c.executeQuery(SQLSTR);
while(RS.next())
{
out.print(RS.getString("name")+"\t");
out.print(RS.getString("sex")+"\t");
out.print(RS.getString("adress")+"\t");
out.print("<br>");
}
c.close();
%>
3、现在出现的报错信息为空指针
Stacktrace:] with root cause
java.lang.NullPointerException
页面信息显示为
org.apache.jasper.JasperException: An exception occurred processing JSP page /testConnMySQL.jsp at line 8
5: <%
6: String SQLSTR="SELECT * FROM USER ORDER BY id DESC";
7: ResultSet RS=c.executeQuery(SQLSTR);
8: while(RS.next())
9: {
10: out.print(RS.getString("name")+"\t");
11: out.print(RS.getString("sex")+"\t");
请问8: while(RS.next())应当怎么修改,新手希望大家多多指教,感激不尽~ 展开
具体代码如下
1、在Conn类中
public Conn(){
try{
Class.forName("com.MySQL.jdbc.Driver");
}catch(java.lang.ClassNotFoundException e){
System.err.println(e.getMessage());
}
}
/*
* 查询
* */
public ResultSet executeQuery(String sql){
try{
conn=DriverManager.getConnection("jdbc:MySQL://localhost:3306/testDB?useUnicode=true&characterEncoding=UTF-8","root",null);
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLException ex){
System.err.println(ex.getMessage());
}
return rs;
}
2、javabean中
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>
<jsp:useBean id="c" scope="page" class="com.ch6.Conn"/>
<%
String SQLSTR="SELECT * FROM USER ORDER BY id DESC";
ResultSet RS=c.executeQuery(SQLSTR);
while(RS.next())
{
out.print(RS.getString("name")+"\t");
out.print(RS.getString("sex")+"\t");
out.print(RS.getString("adress")+"\t");
out.print("<br>");
}
c.close();
%>
3、现在出现的报错信息为空指针
Stacktrace:] with root cause
java.lang.NullPointerException
页面信息显示为
org.apache.jasper.JasperException: An exception occurred processing JSP page /testConnMySQL.jsp at line 8
5: <%
6: String SQLSTR="SELECT * FROM USER ORDER BY id DESC";
7: ResultSet RS=c.executeQuery(SQLSTR);
8: while(RS.next())
9: {
10: out.print(RS.getString("name")+"\t");
11: out.print(RS.getString("sex")+"\t");
请问8: while(RS.next())应当怎么修改,新手希望大家多多指教,感激不尽~ 展开
3个回答
展开全部
你的数据应该没有连上 所以在Conn类中有问题
追问
所以该请问怎么修改呢?
追答
你要先测试一下 你那个类是没问题的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while(RS.next())这里对着啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得c是空的
更多追问追答
追问
那请问应当怎么更改比较好呢?
追答
我从来没用过这个标签,说不太清楚。
隐约记得,这个userbean标签是通过id在scope范围内找到一个对象,
你的scope设置的是page,如果在这个范围内你没有创建过conn对象的话,用id:c去引用,应该就是空的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询