我创建了一个连接到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>
答案 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库添加到项目库中,然后清理构建并尝试运行该项目。