exception
org.apache.jasper.JasperException: java.lang.NullPointerException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:500)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:428)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.lang.NullPointerException
org.apache.jsp.student_jsp._jspService(student_jsp.java:108)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.30 logs.
/////////////////////////////////////////////////////////////////////////////////////////////
以下是代码
package com.style.lin;
import java.sql.*;
public class student{
Connection conn;
Statement stmt;
ResultSet rs;
public student() {
// TODO Auto-generated constructor stub
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("sql类找不到<br>");
}
}
public ResultSet executeQuery(String sql) {
try {
String DATABASE_URL ="jdbc:sqlserver://localhost:1433;databaseName=student3";
conn=DriverManager.getConnection(DATABASE_URL,"","");
stmt = conn.createStatement();
rs=stmt.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.print("错误");
}
return rs;
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<%@page import="java.sql.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="student" class="com.style.lin.student" scope="page">
</jsp:useBean>
<h1 align="center">学生信息</h1>
<strong>
<table border="1" align="center">
<tr align="center">
<td width="100">
学号
</td>
<td width="100">
姓名
</td>
<td width="100">
身份证号码
</td>
<td width="100">
班级
</td>
<td width="100">
性别
</td>
<td width="100">
出身年月
</td>
<td width="100">
医疗卡号
</td>
<tr>
</table>
</strong>
<%
ResultSet rs=student.executeQuery("select * from student");
while(rs.next()){
%>
<table border="1" align="center">
<tr>
<td width="100">
<%=rs.getString("学号")%>
</td>
<td width="100">
<%=rs.getString( "姓名")%>
</td>
<td width="100">
<%=rs.getString( "身份证号码")%>
</td>
<td width="100">
<%=rs.getString( "班级")%>
</td>
<td width="100">
<%=rs.getString( "性别")%>
</td>
<td width="100">
<%=rs.getString( "出身年月")%>
</td>
<td width="100">
<%=rs.getString( "医疗卡号")%>
</td>
<tr>
</table>
<%
}
rs.close();
%>
</body>
</html>
8 个解决方案
#1
打个断点看看吧。
#2
不太会...
#3
你数据库里的名字都是中文啊·?
#4
查出来的明显是个List。rs.next 貌似是true or false吧,你这个rs结果集是List形式的,所以获取数据要用List遍历 不是像你这样的
#5
对啊,中文··*.*
#6
如果你确定只有一条数据,那就rs.get(0).getString("学号"),这样就好了。
有多个,那就要用for循环或者<c:if/><c:forEach/>标签了
有多个,那就要用for循环或者<c:if/><c:forEach/>标签了
#7
啊啊啊?
那是怎样?
#8
已解答,呵呵,select*from的,不管你几条数据,都是List形式返回的,除非你是用id查或者count(*),这样才不是List
#1
打个断点看看吧。
#2
不太会...
#3
你数据库里的名字都是中文啊·?
#4
查出来的明显是个List。rs.next 貌似是true or false吧,你这个rs结果集是List形式的,所以获取数据要用List遍历 不是像你这样的
#5
对啊,中文··*.*
#6
如果你确定只有一条数据,那就rs.get(0).getString("学号"),这样就好了。
有多个,那就要用for循环或者<c:if/><c:forEach/>标签了
有多个,那就要用for循环或者<c:if/><c:forEach/>标签了
#7
啊啊啊?
那是怎样?
#8
已解答,呵呵,select*from的,不管你几条数据,都是List形式返回的,除非你是用id查或者count(*),这样才不是List