課程
/后端開發(fā)
/Java
/Hibernate初探之單表映射
通過session對(duì)象操作數(shù)據(jù)庫
2015-06-15
源自:Hibernate初探之單表映射 2-3
正在回答
*用JDBC驅(qū)動(dòng)建立連接,顯示Connection對(duì)象
package?com.bohy.jdbc.test;
import?java.sql.Connection;
import?java.sql.DriverManager;
import?java.sql.SQLException;
public?class?Demo01?{
public?void?JDBCConnection(){
try?{
//加載JDBC連接數(shù)據(jù)庫的驅(qū)動(dòng)
//驅(qū)動(dòng)說白點(diǎn),就是一個(gè)class文件
Class.forName("com.mysql.jdbc.Driver");
/*
?*?獲取鏈接需要三個(gè)參數(shù):
?*?1、url:連接的地址及相關(guān)參數(shù)
?*?2、username:數(shù)據(jù)庫賬號(hào)
?*?3、password:數(shù)據(jù)庫密碼
?*/
"http://url格式:jdbc:數(shù)據(jù)庫廠商名稱(例如:mysql):
//數(shù)據(jù)庫所在地址的IP(例如:localhost):端口號(hào)(一般情況下都是3306)/數(shù)據(jù)庫名稱(例如:12_db)"
String?url="jdbc:mysql://localhost:3306/12_db";
String?username="root";
String?password="123456";
//從驅(qū)動(dòng)獲取一個(gè)數(shù)據(jù)庫連接(也就是Connection對(duì)象)
//connection:連接;?Driver:驅(qū)動(dòng)程序;?Manager:管理者;
Connection?conn?=?DriverManager.getConnection(url,username,password);
System.out.println(conn);
?*?注意,數(shù)據(jù)庫用完*必須*關(guān)掉;這是規(guī)定.?
*Statement對(duì)象將由Java垃圾收集程序自動(dòng)關(guān)閉。
*而作為一種好的編程風(fēng)格,應(yīng)在不需要Statement對(duì)象時(shí)顯式地關(guān)閉它們。
*這將立即釋放DBMS資源,有助于避免潛在的內(nèi)存問題。?
*?ResultSet維護(hù)指向其當(dāng)前數(shù)據(jù)行的光標(biāo)。
*每調(diào)用一次next方法,光標(biāo)向下移動(dòng)一行。
*最初它位于第一行之前,
*因此第一次調(diào)用next將把光標(biāo)置于?第一行上,
*使它成為當(dāng)前行。
*隨著每次調(diào)用next導(dǎo)致光標(biāo)向下移動(dòng)一行,
*按照從上至下的次序獲取ResultSet行,
*在ResultSet對(duì)象或其父輩?Statement對(duì)象關(guān)閉之前,
*光標(biāo)一直保持有效。
conn.close();
}?catch?(ClassNotFoundException?e)?{
System.err.println("沒有找到JDBC連接mySql的驅(qū)動(dòng)");
}?catch?(SQLException?e)?{
System.err.println("連接數(shù)據(jù)庫失??!");
}
public?static?void?main(String[]?args)?{
new?Demo01().JDBCConnection();
*hibernate獲取session對(duì)象,并顯示成功還是失敗
Public?class?SessionTest
{
???@Test
???Public?void?testOpenSession()
???{
???//獲得配置對(duì)象
???Configuration?config=new?Configuration().configure();
???//獲得服務(wù)注冊(cè)對(duì)象
???ServiceRegistry?serviceRegistry=new?ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
???//獲得sessionFactory對(duì)象
???SessionFactory?sessionFactory=config.buildSessionFactory(serviceRegistry);
???//獲取session對(duì)象
???Session?session=sessionFactory.openSession();
???If(session!=null)
?????{
?????System.out.println(“session創(chuàng)建成功!”);
?????}
???else
?????System.out.println(“session創(chuàng)建失?。 ?;
???}
舉報(bào)
Java持久化框架Hibernate入門教程,掌握Hibernate基本概念
3 回答session看成是一個(gè)操作數(shù)據(jù)庫對(duì)象
1 回答有沒有同學(xué)和我一樣報(bào)錯(cuò)的,session保存對(duì)象空指針
3 回答如何儲(chǔ)存blob對(duì)象在sql server?實(shí)體set blob對(duì)象保存就報(bào)錯(cuò),不set blob對(duì)象就沒問題
3 回答如何保持BLOB對(duì)象
2 回答說明兩種獲取Session對(duì)象的方法會(huì)自動(dòng)關(guān)閉可以用這個(gè)例子不是更好點(diǎn)
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2015-12-15
*用JDBC驅(qū)動(dòng)建立連接,顯示Connection對(duì)象
package?com.bohy.jdbc.test;
import?java.sql.Connection;
import?java.sql.DriverManager;
import?java.sql.SQLException;
public?class?Demo01?{
public?void?JDBCConnection(){
try?{
//加載JDBC連接數(shù)據(jù)庫的驅(qū)動(dòng)
//驅(qū)動(dòng)說白點(diǎn),就是一個(gè)class文件
Class.forName("com.mysql.jdbc.Driver");
/*
?*?獲取鏈接需要三個(gè)參數(shù):
?*?1、url:連接的地址及相關(guān)參數(shù)
?*?2、username:數(shù)據(jù)庫賬號(hào)
?*?3、password:數(shù)據(jù)庫密碼
?*/
"http://url格式:jdbc:數(shù)據(jù)庫廠商名稱(例如:mysql):
//數(shù)據(jù)庫所在地址的IP(例如:localhost):端口號(hào)(一般情況下都是3306)/數(shù)據(jù)庫名稱(例如:12_db)"
String?url="jdbc:mysql://localhost:3306/12_db";
String?username="root";
String?password="123456";
//從驅(qū)動(dòng)獲取一個(gè)數(shù)據(jù)庫連接(也就是Connection對(duì)象)
//connection:連接;?Driver:驅(qū)動(dòng)程序;?Manager:管理者;
Connection?conn?=?DriverManager.getConnection(url,username,password);
System.out.println(conn);
/*
?*?注意,數(shù)據(jù)庫用完*必須*關(guān)掉;這是規(guī)定.?
*Statement對(duì)象將由Java垃圾收集程序自動(dòng)關(guān)閉。
*而作為一種好的編程風(fēng)格,應(yīng)在不需要Statement對(duì)象時(shí)顯式地關(guān)閉它們。
*這將立即釋放DBMS資源,有助于避免潛在的內(nèi)存問題。?
*?ResultSet維護(hù)指向其當(dāng)前數(shù)據(jù)行的光標(biāo)。
*每調(diào)用一次next方法,光標(biāo)向下移動(dòng)一行。
*最初它位于第一行之前,
*因此第一次調(diào)用next將把光標(biāo)置于?第一行上,
*使它成為當(dāng)前行。
*隨著每次調(diào)用next導(dǎo)致光標(biāo)向下移動(dòng)一行,
*按照從上至下的次序獲取ResultSet行,
*在ResultSet對(duì)象或其父輩?Statement對(duì)象關(guān)閉之前,
*光標(biāo)一直保持有效。
?*/
conn.close();
}?catch?(ClassNotFoundException?e)?{
System.err.println("沒有找到JDBC連接mySql的驅(qū)動(dòng)");
}?catch?(SQLException?e)?{
System.err.println("連接數(shù)據(jù)庫失??!");
}
}
public?static?void?main(String[]?args)?{
new?Demo01().JDBCConnection();
}
}
*hibernate獲取session對(duì)象,并顯示成功還是失敗
Public?class?SessionTest
{
???@Test
???Public?void?testOpenSession()
???{
???//獲得配置對(duì)象
???Configuration?config=new?Configuration().configure();
???//獲得服務(wù)注冊(cè)對(duì)象
???ServiceRegistry?serviceRegistry=new?ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
???//獲得sessionFactory對(duì)象
???SessionFactory?sessionFactory=config.buildSessionFactory(serviceRegistry);
???//獲取session對(duì)象
???Session?session=sessionFactory.openSession();
???If(session!=null)
?????{
?????System.out.println(“session創(chuàng)建成功!”);
?????}
???else
?????{
?????System.out.println(“session創(chuàng)建失?。 ?;
?????}
???}
}