造成連接復位異常線程「main」 org.hibernate.exception.JDBCConnectionException:無法打開連接
我試圖通過休眠我的java程序連接到SQL Server R2 20008,但我得到錯誤
主類是如下
package com.prizm;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
public class SecondPractice {
public static void main(String args[]){
Configuration configuration = new
Configuration().configure("hibernate.cfg.xml");
ServiceRegistryBuilder registry = new ServiceRegistryBuilder();
registry.applySettings(configuration.getProperties());
ServiceRegistry serviceRegistry = registry.buildServiceRegistry();
SessionFactorysessionFactory=configuration.buildSessionFactory(serviceRegistry);
Session session = sessionFactory.openSession();
session.beginTransaction();
Student lecturer = new Student();
lecturer.setFirstname("raj");
lecturer.setLastname("kumar");
session.save(lecturer);
session.getTransaction().commit();
session.close();
}
}
所以我在哪裏犯錯,我需要什麼到k現在關於這個錯誤,怎麼解決呢 在此先感謝
在這裏,我已經編輯我的問題,從上述公佈的不同的代碼,因爲我不舒服log4j屬性,所以我已經試圖在我的Java代碼連接到數據庫通過JDBC,連接正在完成,但是當涉及到創建任何表或任何其他與數據傳輸有關的事情時,它會給我提供與前面提到的相同的錯誤。
這裏是JDBC代碼與Java的API記錄器沿(java.util.logger程序)
package com.prizm;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.FileHandler;
import java.util.logging.SimpleFormatter;
public class JKL {
public static Logger logger=Logger.getLogger(JKL.class.getName());
public static FileHandler fh=null;
public static void init(){
try{
fh=new FileHandler("logger.log",false);
}catch(Exception e){}
fh.setFormatter(new SimpleFormatter());
Logger l=Logger.getLogger("");
l.addHandler(fh);
Connection con=null;
try{
DriverManager.registerDriver(new com.microsoft.sqlserver.jdbc.SQLServerDriver());
con=DriverManager.getConnection("jdbc:sqlserver://167.01.09.12;IntegratedSecurity=true");
if(con!=null){
System.out.println("done");
}
Statement st=con.createStatement();
st.executeUpdate("create table hi(id int,name varchar(50))");
}catch(SQLException e){l.log(Level.SEVERE,"Here is your error",e);}
}
public static void main(String args[]){
JKL.init();
}
}
和我得到的日誌記錄是這樣的
所以我應該從中理解什麼,我需要做一些配置的微軟sql server 2008 r2,因爲我有sp1版本和這個一段代碼在我朋友的電腦上工作得很好。
配置log4j.properties,以便您可以獲取調試日誌。我們可以診斷 –
我有類SecondPractice.class,所以如何配置log4j.properties到我的文件,我有log4j.jar文件進入我的庫,我沒有太多關於log4j.jar的知識,你可以發佈代碼爲了那個原因。 –
請以** text **形式發佈異常堆棧跟蹤,而不是屏幕截圖。 –