1. 安裝sqlserver2008
2. 默認情況下是windows身份登錄,sa用戶被禁止。
3. 通過windows身份登錄到數據庫,在“安全性”下,右鍵點擊“新建登錄名”,選擇以sql 身份登錄。
4. 右鍵點擊服務器,選擇“屬性”,選擇“安全性”,然後選中sql server和windows身份驗證模式。
5. 配置遠程登錄,2008採用的是動態端口分配,打開配置管理器,修改服務端和客戶端的端口爲1433
6. 下載jdbc驅動,到microsoft官網下載sqljdbc2.0驅動——Microsoft SQL Server JDBC Driver 2.0.exe,很小大概就4M,解壓后里面有2個Jar包,sqljdbc4.jar和sqljdbc.jar,這兩個都一樣,只是針對你的JDK的版本的不同(我的jdk是1.6.21,導入sqljdbc4報了一個異常,然而換了一個以前的包就好了,當出現這個Disabling contextual LOB creation as createClob() method threw error : java.lang.reflect.InvocationTargetException異常時,就是說包導錯了,換包試試。)
7. 配置hibernate.properties文件(直接用jdbc也行)
## MS SQL Server
hibernate.dialect org.hibernate.dialect.SQLServerDialect
hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver
hibernate.connection.url jdbc:sqlserver://172.7.22.24:1433;DatabaseName=webclient
hibernate.connection.username root
hibernate.connection.password centre
我採用的是c3p0數據源,測試獲得sessionfactory正常。
8.直接通過jdbc訪問的例子,網上找的,應該是對的。
import java.sql.*;
public class javaConSQL
{
public static void main(String[] args)
{
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL數據庫引擎
String connectDB=;//數據源
"jdbc:sqlserver://127.0.0.1:1433;DatabaseName=Mydb"
try
{
Class.forName(JDriver);//加載數據庫引擎,返回給定字符串名的類
}catch(ClassNotFoundException e)
{
//e.printStackTrace();
System.out.println("加載數據庫引擎失敗");
System.exit(0);
}
System.out.println("數據庫驅動成功");
try
{
String user="sa";
String password="sql2008";
Connection con=DriverManager.getConnection(connectDB,user,password);//連接數據庫對象
System.out.println("連接數據庫成功");
Statement stmt=con.createStatement();//創建SQL命令對象
//創建表
System.out.println("開始創建表");
String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))";//創建表SQL語句
stmt.executeUpdate(query);//執行SQL命令對象
System.out.println("表創建成功");
//輸入數據
System.out.println("開始插入數據");
String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";//插入數據SQL語句
String a2="INSERT INTO TABLE1 VALUES('2','偉哥')";
String a3="INSERT INTO TABLE1 VALUES('3','張哥')";
stmt.executeUpdate(a1);//執行SQL命令對象
stmt.executeUpdate(a2);
stmt.executeUpdate(a3);
System.out.println("插入數據成功");
//讀取數據
System.out.println("開始讀取數據");
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1");//返回SQL語句查詢結果集(集合)
//循環輸出每一條記錄
while(rs.next())
{
//輸出每個字段
System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
}
System.out.println("讀取完畢");
//關閉連接
stmt.close();//關閉命令對象連接
con.close();//關閉數據庫連接
}
catch(SQLException e)
{
e.printStackTrace();
//System.out.println("數據庫連接錯誤");
System.exit(0);
}
}
}
9.請關閉防火牆。