【问题标题】:SQL Sever and JAVA website connection JDBCSQL Server 和 JAVA 网站连接 JDBC
【发布时间】:2014-10-21 09:35:56
【问题描述】:

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

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

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

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

PS - 我曾经使用 JDBC ODBC 桥将 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>

【问题讨论】:

  • 大家好,非常感谢您的帮助,我找到了问题所在。我在另一台 PC 上运行了相同的代码,它运行良好。所以问题出在PC上而不是代码上。再次感谢您的帮助...

标签: sql-server jsp servlets jdbc web


【解决方案1】:

您的 Jar 文件需要在您的 Java SDK 安装下,在 jre\lib\ext 下。这样您就不必为 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");

【讨论】:

  • 我将 jar 文件放入 jre\lib\ext 文件夹。但它仍然给我同样的错误,我也尝试以各种可能的方式改变我的连接,但它仍然给了我这个错误。我不明白我在做什么错......
【解决方案2】:

这是连接方式..

    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
}

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

【讨论】:

  • 据我了解,此字符串用于连接到“MySQL”数据库,我使用的是 SQL Server,尽管我已经对我的代码进行了这些更改,但它仍然找不到驱动程序,是否存在将 SQL Server 连接到网页的任何其他方式。
【解决方案3】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-13
    • 2017-10-17
    • 1970-01-01
    • 2014-12-01
    • 2011-12-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多