SQL Server和JAVA网站连接JDBC

时间:2014-08-27 17:18:11

标签: sql-server jsp servlets jdbc web

我创建了一个连接到SQL Server数据库的JAVA应用程序。 我使用'Microsoft JDBC Driver 4.0 for SQL Server'将我的应用程序连接到数据库。 我在我的PC类路径和我的Java应用程序库中包含了'sqljdbc4.jar'文件,在完美连接之后创建了另一个nessa。

我现在正在创建一个类似于这个Java应用程序的本地网站,具有基本相同的功能,我遇到的问题是,我无法像使用Java应用程序那样将数据库连接到我的网站。它经常说“找不到合适的司机”。我的JAVA应用程序仍然运行,但不是网站,即使在使用相同的PC,驱动程序仍然包含在我的PC类路径和网站库中。

您可以查看我附加的代码。 我也尝试使用servlet而不是jsp页面进行连接,但它给了我同样的问题。

请您指导一下我做错了什么,如果可能的话,请告诉我将网页连接到我创建的SQL Server数据库的正确方法。

PS - 我曾经使用JDBC ODBC Bridge将SQL Sever连接到我的网站,但现在不起作用。

我的代码 -

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Test Page</title>
    </head>
    <body>
<p>
    <b>
        Test Page
    </b>
</p>

<%
try
{                    
    String connectionUrl = "jdbc:sqlserver://localhost:1433;" + "databaseName=Test;user=admin;password=admin";
    Connection con = DriverManager.getConnection(connectionUrl);
    PreparedStatement st=con.prepareStatement("Insert Into Test (UserName, Password ) Values ('Test_UName', 'Test_password')");  
    out.println("<BR><TD>Inserted Successful</TD>");
}
catch(Exception e)
{                    
    out.println("<TD>Insert not Successful</TD>");        
    out.println("<BR><TD>" + e + "</TD>");
}

%>
    </body>
</html>

3 个答案:

答案 0 :(得分:0)

您的Jar文件需要在jre\lib\ext下的Java SDK安装下。因此,您不必为Tomcat指定额外的类路径信息。 示例:D:\Sun\Java7SDK\jre\lib\ext\

可能只是我使用不同的驱动程序(我的jar文件名称不同),但您可能也在连接字符串中缺少Microsoft这个词:

DriverManager.getConnection("jdbc:microsoft:sqlserver://" ...

我不知道您正在使用的Java版本,但在旧版本的Java中,您需要在调用DriverManager.getConnection之前说明您使用的驱动程序,您可以这样做:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

答案 1 :(得分:0)

这是如何连接..

    public static void connect() throws Exception {
     Class.forName("com.mysql.jdbc.Driver").newInstance();
     String url = "jdbc:mysql://localhost:3306/tour_package?autoReconnect=true";
     c = DriverManager.getConnection(url,"root","123");
     //root=database name
     //123= password
}

如果你想得到结果集,你必须写一个方法。

答案 2 :(得分:0)

您似乎应该将JDBC sql java库添加到项目库中,然后清理构建并尝试运行该项目。