请教高手jsp连接sql-server的问题。

leox__88 2008-11-30 09:13:23
这是我的index.jsp文档:
<%@ page contentType="text/html;charset=gbk"%>
<%@ page language="java" import="java.sql.*"%>
<jsp:useBean id = "connBean" scope = "page" class = "Data.VoteConn"/>

<html>
<%
ResultSet rs = connBean.executeQuery("select * from vote");
%>

<body>
<form>
<% while(rs.next()) { %>
<tr>
<td>
<input type="radio" name = "type" value = <%= rs.getString("id") %>> <%= rs.getString("note") %>
</td>
</tr>
<%}
rs.close();
%>
<tr>
<td>
<input type="submit" value="投票">
</td>
</tr>
</form>
<tr>
<td>
<a href="03.htm">查看</a>
</td>
</tr>
</body>
</html>
这是我Bean的java类:
package Data;
import java.sql.*;

public class VoteConn {
String DBDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String ConnStr = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=TouPiao";
String ConnName = "sa";
String ConnPwd = "123456";
Connection conn = null;
ResultSet rs = null;

public VoteConn() {
try {
Class.forName(DBDriver);
} catch (Exception e) {
e.printStackTrace();
}
}

public ResultSet executeQuery(String sql) {
try {
conn = DriverManager.getConnection(ConnStr,ConnName,ConnPwd);
Statement stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
} catch(Exception e) {
e.printStackTrace();
}
return rs;
}

public int exetuteUpdate(String sql) {
int result = 0;
try {
conn = DriverManager.getConnection(ConnStr,ConnName,ConnPwd);
Statement stmt = conn.createStatement();
result = stmt.executeUpdate(sql);
} catch (Exception e ) {
e.printStackTrace();
}
return result;
}

}
sql-server已经打了sql4的补丁...编译没错,在IE运行时出错:
org.apache.jasper.JasperException: Exception in JSP: /index.jsp:12

9:
10: <body>
11: <form>
12: <% while(rs.next()) { %>
13: <tr>
14: <td>
15: <input type="radio" name = "type" value = <%= rs.getString("id") %>> <%= rs.getString("note") %>


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)

请问高手这是怎么回事啊!!!??我用的是EC工具
...全文
76 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ou_yangpengfei 2008-12-01
  • 打赏
  • 举报
回复
看不出来
跟个断点试试 或者 在控制台把错误打印出来
koljp577 2008-12-01
  • 打赏
  • 举报
回复
getString方法在哪?我把我的bean发出来,反正我这个是可以用的,你改造一下好了!
package test.db;
import java.io.*;
import java.sql.*;

public class DatabaseCon {
//声明类成员
public Connection con;
public String URL="jdbc:odbc:mybooks";
public String Message;
public boolean connection() {
try{
//加载JDBC-ODBC桥驱动程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ex){
Message=ex.getMessage();
System.exit(-1);
}
try{
//试图通过JDBC-ODBC桥建立一个与mybooks数据源的连接
con = DriverManager.getConnection(URL,"sa","");
return true;
}
catch(SQLException ex){
Message=ex.getMessage();
return false;
}
}
//关闭数据库连接
public boolean close(){
try{
con.close();
return true;
}
catch(Exception ex){
Message=ex.getMessage();
return false;
}
}
//执行SQL查询语句,返回执行结果集
public ResultSet exeSQL(String sqlstr){
try{
connection();
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery(sqlstr);
return rs;
}catch(Exception ex){
Message=ex.getMessage();
}
return null;
}
//从指定的结果集rs中返回某字段str的值
public String getString(ResultSet rs,String str){
try{
return rs.getString(str);
}catch(Exception ex){
Message=ex.getMessage();
}
return null;
}
}
roonten 2008-11-30
  • 打赏
  • 举报
回复
ResultSet rs = connBean.executeQuery( "select * from vote ");
你输出以下rs结果集的值就知道哪错了
shoushaodon 2008-11-30
  • 打赏
  • 举报
回复
jsp及java程序都没问题。
你java程序中的executeQuery(String sql)、exetuteUpdate(String sql)方法在编写时开发环境没有报错吗?最好不与java本身有的方法同名,除非你要重写。

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧