JSP页面的代码如下··
<%@page contentType="text/html;charset=gbk" import="java.sql.*"%>
<%@ page import="java.sql.*"%><center>
<body>
<table>
<%
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";// 将驱动器的包名和类名存储到字符串中
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StuInfo"; // 将数据库StuInfo的路径存储到字符串中
String userName = "sa"; // 默认用户名
String userPwd = "19881212"; // 安装sql server 2005时的密码
Connection dbConn = null;// 定义打开了的接口对象
Statement stem = null;// 定义语句对象
ResultSet rs = null;// 定义结果集对象
String sql1 = "select * from T_Student";// 定义SQL语句
%>
<%
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);// 链接到数据库,内传数据源URL和登录姓名以及密码
stem = dbConn.createStatement();// 获得语句对象,以便一下向数据库发送SQL语句
rs = stem.executeQuery(sql1);// 使用语句对象的executeQuery()方法传入要发送的SQL语句,并将返回的结果集放在结果集对象中
%>
<%="加载成功"%>
</table>
</body>
</center>此时报出异常:org.apache.jasper.JasperException: org.apache.jasper.JasperException: An exception occurred processing JSP page /Right.jsp at line 1815: String sql1 = "select * from T_Student";// 定义SQL语句
16: %>
17: <%
18: Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
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)
异常大概意思就是加载驱动失败·但是我的驱动在执行java文件的时候又是成功的··Java文件代码如下:String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";// 将驱动器的包名和类名存储到字符串中
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StuInfo"; // 将数据库StuInfo的路径存储到字符串中
String userName = "sa"; // 默认用户名
String userPwd = "19881212"; // 安装sql server 2005时的密码
Connection dbConn = null;// 定义打开了的接口对象
Statement stem = null;// 定义语句对象
ResultSet rs = null;// 定义结果集对象
String sql1 = "select * from T_Student";// 定义SQL语句 try {
Class.forName(driverName);// 加载jdbc驱动
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);// 链接到数据库,内传数据源URL和登录姓名以及密码
stem = dbConn.createStatement();// 获得语句对象,以便一下向数据库发送SQL语句
rs = stem.executeQuery(sql1);// 使用语句对象的executeQuery()方法传入要发送的SQL语句,并将返回的结果集放在结果集对象中 // 使用循环打印出当前结果集的
while (rs.next()) {
// 通过结果集对象的getString()方法来获得相应列名的内容,传的参数为列名或者列数(第几列)
// System.out.print(rs.getString(1)+" ");
// System.out.print(rs.getString(2)+" ");
// System.out.print(rs.getString(3)+" ");
// System.out.print(rs.getString(4)+" ");
// System.out.print(rs.getString(5)+" ");// 通过此方法打印出相应的列的内容
for(int i=1;i<=10;i++){
System.out.print(rs.getString(i)+" ");
}
System.out.println();
} } catch (Exception e) {
e.printStackTrace();
} finally {
// 依次 关掉:结果集对象、语句对象、打开了的接口对象
// 无论如何都要关闭,避免浪费资源,关的时候要注意,当它不为空的时候才能关·要不然又会报异常
try {
if (rs != null)
rs.close();
if (stem != null)
stem.close();
if (dbConn != null)
dbConn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}不知道到底怎么回事·我的驱动是jdbc1.1存放位置以及环境变量均已经设置,望高手指点··
<%@page contentType="text/html;charset=gbk" import="java.sql.*"%>
<%@ page import="java.sql.*"%><center>
<body>
<table>
<%
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";// 将驱动器的包名和类名存储到字符串中
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StuInfo"; // 将数据库StuInfo的路径存储到字符串中
String userName = "sa"; // 默认用户名
String userPwd = "19881212"; // 安装sql server 2005时的密码
Connection dbConn = null;// 定义打开了的接口对象
Statement stem = null;// 定义语句对象
ResultSet rs = null;// 定义结果集对象
String sql1 = "select * from T_Student";// 定义SQL语句
%>
<%
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);// 链接到数据库,内传数据源URL和登录姓名以及密码
stem = dbConn.createStatement();// 获得语句对象,以便一下向数据库发送SQL语句
rs = stem.executeQuery(sql1);// 使用语句对象的executeQuery()方法传入要发送的SQL语句,并将返回的结果集放在结果集对象中
%>
<%="加载成功"%>
</table>
</body>
</center>此时报出异常:org.apache.jasper.JasperException: org.apache.jasper.JasperException: An exception occurred processing JSP page /Right.jsp at line 1815: String sql1 = "select * from T_Student";// 定义SQL语句
16: %>
17: <%
18: Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
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)
异常大概意思就是加载驱动失败·但是我的驱动在执行java文件的时候又是成功的··Java文件代码如下:String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";// 将驱动器的包名和类名存储到字符串中
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=StuInfo"; // 将数据库StuInfo的路径存储到字符串中
String userName = "sa"; // 默认用户名
String userPwd = "19881212"; // 安装sql server 2005时的密码
Connection dbConn = null;// 定义打开了的接口对象
Statement stem = null;// 定义语句对象
ResultSet rs = null;// 定义结果集对象
String sql1 = "select * from T_Student";// 定义SQL语句 try {
Class.forName(driverName);// 加载jdbc驱动
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);// 链接到数据库,内传数据源URL和登录姓名以及密码
stem = dbConn.createStatement();// 获得语句对象,以便一下向数据库发送SQL语句
rs = stem.executeQuery(sql1);// 使用语句对象的executeQuery()方法传入要发送的SQL语句,并将返回的结果集放在结果集对象中 // 使用循环打印出当前结果集的
while (rs.next()) {
// 通过结果集对象的getString()方法来获得相应列名的内容,传的参数为列名或者列数(第几列)
// System.out.print(rs.getString(1)+" ");
// System.out.print(rs.getString(2)+" ");
// System.out.print(rs.getString(3)+" ");
// System.out.print(rs.getString(4)+" ");
// System.out.print(rs.getString(5)+" ");// 通过此方法打印出相应的列的内容
for(int i=1;i<=10;i++){
System.out.print(rs.getString(i)+" ");
}
System.out.println();
} } catch (Exception e) {
e.printStackTrace();
} finally {
// 依次 关掉:结果集对象、语句对象、打开了的接口对象
// 无论如何都要关闭,避免浪费资源,关的时候要注意,当它不为空的时候才能关·要不然又会报异常
try {
if (rs != null)
rs.close();
if (stem != null)
stem.close();
if (dbConn != null)
dbConn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}不知道到底怎么回事·我的驱动是jdbc1.1存放位置以及环境变量均已经设置,望高手指点··
你在頁面上 用 import com.microsoft.sqlserver.jdbc.SQLServerDriver 看看出錯么?
出錯的話 那是JAR包沒放到LIB里去。Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();好象不用后面的.newInstance();记得数据库的操作放在try catch 里你的connection statment result 用好你得close()呀
我SQL2000 OK的<%@page contentType="text/html;charset=gbk" import="java.sql.*"%>
<%@ page import="java.sql.*"%>
<center>
<body>
<table>
<%
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";// 将驱动器的包名和类名存储到字符串中
String dbURL = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=test"; // 将数据库StuInfo的路径存储到字符串中
String userName = "sa"; // 默认用户名
String userPwd = "sa"; // 安装sql server 2005时的密码
Connection dbConn = null;// 定义打开了的接口对象
Statement stem = null;// 定义语句对象
ResultSet rs = null;// 定义结果集对象
String sql1 = "select * from city";// 定义SQL语句
try{
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);// 链接到数据库,内传数据源URL和登录姓名以及密码
stem = dbConn.createStatement();// 获得语句对象,以便一下向数据库发送SQL语句
rs = stem.executeQuery(sql1);
out.println("加載成功");
}
// 使用语句对象的executeQuery()方法传入要发送的SQL语句,并将返回的结果集放在结果集对象中
catch(Exception exception){
System.out.println(exception.toString());
}finally{
rs.close();
stem.close();
dbConn.close();
}
%>
</table>
</body>
</center>
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} catch (Exception e) {
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(strURL, username, pwd);
} catch (SQLException e) {
e.printStackTrace();
}
2.其次sql servlet的服务要开。
3.如果是2000的话,要打sp4的补丁。
4.看看你的端口是不是1433
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at org.apache.jsp.Right_jsp._jspService(Right_jsp.java:75)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:706)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:677)
at org.apache.jsp.SerVer_jsp._jspService(SerVer_jsp.java:68)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
2010-10-28 10:25:53 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at org.apache.jsp.Right_jsp._jspService(Right_jsp.java:75)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:706)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:677)
at org.apache.jsp.SerVer_jsp._jspService(SerVer_jsp.java:68)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:619)
少jar包
没找到驱动,你看看tomcat下,项目的web-inf的lib目录里有没有驱动包。
还真没有··这怎么回事呢?我用的是Myeclipse6.0..是不是还要加?如何加?麻烦给出详细点的步骤·
当你项目改变的时候,tomcat下webapp对应的目录不会自动更新吗?
还需要你手动拷贝?
但是我手动的添加到项目下的lib文件夹下的之后·还是不行·
String userName = "sa";
String password = "19881212";
conn = DriverManager.getConnection(url, userName, password);
com/genuitec/eclipse/webdesigner3/ContentTypeIdForXHTML
报这个错··不知道啥意思··
后面不需要newInstance();
不知道你解决了没有,换个驱动,换个连接的jar文件,别再这个驱动下总是纠结
在看一下你的jir文件,用sqlserver2005的jar包,最好是复制到\WebRoot\WEB-INF\lib下