一个关于java数据库联接的问题:
我使用的是jsqlconnect作为数据库的java纯连接驱动
代码如下:
package data.database; import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.DriverManager;
public static Connection getCon() {
Connection con = null;
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String ulr ="jdbc:microsoft:sqlserver//127.0.0.1:1433;databasename=pet_hospital";
try {
Class.forName(driver);
con = DriverManager.getConnection(ulr,"sa","00100100ffff");
if (con.isClosed()==false){
System.out.println("数据库连接成功");
}
else {
System.out.println("数据库连接失败");
}
} catch (SQLException ex) {
System.out
.println("=================================================");
System.out.println("数据库连接失败,请您检查数据库配置的ULR,登陆帐户以及登陆密码");
ex.printStackTrace();

} catch (ClassNotFoundException ex) {
System.out
.println("=================================================");
System.out.println("数据库连接的文件未找到,请您重新检查数据库的驱动程序");
}
return con;
}
private void clsoe(Connection con) {
if (con != null) {
try {
con.close();
} catch (SQLException ex) {
}
}
} private void clsoe(Statement stmt) {
if (stmt != null) {
try {
stmt.close();
} catch (SQLException ex) {
}
}
} private void clsoe(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException ex) {
}
}
} public static void close(Connection con, Statement stmt) {
GetConnection connection = new GetConnection();
connection.clsoe(stmt);
connection.clsoe(con);
} public static void close(Connection con, Statement stmt, ResultSet rs) {
GetConnection connection = new GetConnection();
connection.clsoe(rs);
GetConnection.close(con, stmt);
}
} 抛出的异常显示如下:
数据库连接失败,请您检查数据库配置的ULR,登陆帐户以及登陆密码
com.jnetdirect.jsql.m: Failed Logon:com.jnetdirect.jsql.m: TCP/IP connection failed to host:java.net.ConnectException: Connection refused: connect url:jdbc:JSQLConnect://localhost/database=pet_hospital
at com.jnetdirect.jsql.JSQLDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at data.database.GetConnection.getCon(GetConnection.java:15)
at data.user.UserOperation.DataBaseIsExists(UserOperation.java:147)
at servlets.user.LoginUser.doPost(LoginUser.java:88)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
数据库连接为空
希望用过此连接的高手能帮我解决这个难题,谢谢了啊。原来连接是成功的后来就不行了

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【six_shen_peng】截止到2008-06-24 19:39:14的历史汇总数据(不包括此帖):
    发帖数:10                 发帖分:280                
    结贴数:9                  结贴分:280                
    未结数:1                  未结分:0                  
    结贴率:90.00 %            结分率:100.00%            
    值得尊敬
      

  2.   

    感觉代码有点乱,你可以在数据库连接的那里con = DriverManager.getConnection(ulr,"sa","00100100ffff"); 
    设置一个断点,跟一下值的变化情况。