求助,jsp访问数据库的问题
|
我想通过下面的一个程序访问数据库: <%@page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.io.*"%> <html> <body> 以下是从MS SQL Server数据库读取的数据:<hr> <table border="1"> <tr><td>id</td><td>书名</td><td>出版社</td><td>价格</td> </tr> <%! String trans(String chi) { String result=null; byte temp[]; try { temp=chi.getBytes("iso_8859_1"); result=new String(temp); } catch(UnsupportedEncodingException e) { System.out.println(e.toString()); } return result; } %> <%
String CLASSFORNAME="com.microsoft.jdbc.sqlserver.SQLServerDriver"; String SERVANDDB="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jspdev"; Connection con=null;
try{ Class.forName(CLASSFORNAME); con=java.sql.DriverManager.getConnection(SERVANDDB,"sa",""); Statement stmt=con.createStatement(); ResultSet rst=stmt.executeQuery("select * from book;");
while(rst.next()) { out.println("<tr>"); out.println("<td>"+trans(rst.getString("BookId"))+"</td>"); out.println("<td>"+trans(rst.getString("BookName"))+"</td>"); out.println("<td>"+trans(rst.getString("Publisher"))+"</td>"); out.println("<td>"+rst.getFloat("Price")+"</td>"); out.println("</tr>"); } rst.close(); stmt.close(); con.close(); } catch(Exception e){} %> </table> </body> </html> 但是不成功,试验得知在con=java.sql.DriverManager.getConnection(SERVANDDB,"sa","");这一句抛出了一个异常,后面的都没执行,服务器是tomcat,jdbc驱动的三个jar文件都复制到common\lib目录下,并设置了环境变量。 请问这是什么原因呢?谢谢! | |
搜索更多相关主题的帖子:
数据库 jsp SQL java
----------------解决方案--------------------------------------------------------
建议将异常信息抛出来
你这里的信息给的很不明确
----------------解决方案--------------------------------------------------------
好的,我将那句变成
try{
con=java.sql.DriverManager.getConnection(SERVANDDB,"sa","");
}
catch(Exception e){out.println(e.getMessage());}
就输出了如下信息:
[Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
用eclipse编了个类似的java程序,就提示Error:no Active Connection
----------------解决方案--------------------------------------------------------