我有JBoss和MSSQL Server 2008. Sqljdbc.jar
是在Java資源/庫,但我仍然有一個ClassNotFoundExeption
。無法連接到MS SQL服務器
這是我的servlet:
package work.Model;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.*;
public class SQLServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public SQLServlet() {
super();
}
final String server = "localhost";
final int port = 1433;
final String user = "work";
final String password = "workdb";
final String database = "workDB";
final String jdbcUrl = "jdbc:sqlserver://"+server+":"+1433+";user="+user+";password="+password+";databaseName="+database+"";
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
System.out.println("try to load driver");
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
System.out.println("# - Driver Loaded");
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println("# - Connection Obtained");
Statement stmt = con.createStatement();
System.out.println("# - Statement Created");
String loginCheck = "SELECT userID,username,password FROM USERS where username=? and password=?";
} catch (Exception ex) {
System.out.println("Error : "+ex);
}
}
}
的錯誤是:
[STDOUT] Error : java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver from [email protected]{[email protected]{name=vfszip:/D:/Jboss/jboss-5.1.0.GA/server/default/deploy/Work.war/
如何正確連接MSSQL服務器?
您應該儘量不要硬編碼數據庫驅動程序類,用戶,密碼,網址。這意味着對數據庫進行任何更改都會迫使您重新編譯您的web應用程序(有忘記更新某些servlet的風險),並導致很多問題。如果你不想使用J2EE(包括JBoss)提供的工具來做到這一點(谷歌「JBoss數據源」),至少你可以從屬性文件中加載它們。 – SJuan76