?? hibernate.txt
字號:
Hibernate是ORmaping的一種實現
是目前在JAVA界使用非常廣泛的ORMapping的一種實現
可以實現關系型數據庫和對象之間的映射。
用來開發數據庫系統非常方便。
可以將數據庫和程序的設計融合在一起
不會在出現以前那樣程序是面向對象的,但是一到數據庫那里就亂套了的想象。
Hibernate 是一個面向Java環境的對象/關系數據庫映射工具。用來把對象模型表示的對象映射到基于SQL 的關系模型結構中去。 Hibernate 不僅僅管理Java 類到數據庫表的映射,還提供數據查詢和獲取數據的方法,可以大幅度減少開發時人工使用SQL 和JDBC 處理數據的時間。Hibernate 的目標是對于開發者通常的數據持久化相關的編程任務,解放其中的95%。
一種ORM架構,幫助你從數據庫中獲取、管理業務對象
Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序實用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。Eclipse平臺下的Hibernate輔助開發工具
什么是hibernate?
Hibernate是一個免費的開源Java包,它使得與關系數據庫打交道變得十分輕松,就像您的數據庫中包含每天使用的普通Java對象一樣,同時不必考慮如何把它們從神秘的數據庫表中取出(或放回到數據庫表中)。它解放了您,使您可以專注于應用程序的對象和功能,而不必擔心如何保存它們或稍后如何找到它們。
這個具體到JavaBean的jsp程序中有什么具體的作用呢??
以前作的一個jsp論壇,寫了一個論壇板塊的Java程序,如下:
package bbs;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
public class boards{
public boards(){
}
public ResultSet boardList(){
Connection conn=null;
Statement stat=null;
ResultSet rs=null;
try{
InitialContext ict=new InitialContext();
DataSource ds=(DataSource)ict.lookup("java:comp/env/jdbc/mysql");
conn=ds.getConnection();
stat=conn.createStatement();
rs=stat.executeQuery("select boards.id,boards.name,description,users.name from "
+" users,boards where users.level=boards.id");
}
catch(Exception ex){
ex.printStackTrace();
}
/* finally{
if(rs!=null){
try{
rs.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
if(stat!=null){
try{
stat.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
if(stat!=null){
try{
stat.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}*/
return rs;
}
}
起先,我試圖關閉rs,stst,conn,但關閉之后就不能返回了,所以把關閉的部分注解掉了。
在這里,我返回的是ResultSet類型的!rs,stat,conn都不能關!總是感覺這樣寫法不是很合理!聽同學說,用Hibernate思想比較簡單,剛才看了一會Hibernate,沒明白是什么個意思。。。
請問在這個題目中如何運用Hibernate?謝謝了!
Struts實現了MVC就是所謂的三層架構!
顯示層 業務層 數據層
很明顯在MVC中我們的數據訪問放在業務層中,那么...就出現了數據訪問跟業務邏輯相耦合的狀況!
我們一方面得注意業務邏輯的處理另外一方面也得注意數據訪問(增加 刪除 修改 查詢)的處理!
而Hibernate的出現就簡化了我們對于數據庫的操作!他專門解決數據訪問細節問題!是開發人員能更加專著與業務邏輯的處理!那么很顯然以Struts+Hibernate開發一個項目的,那么整個軟件架構就由原來的三曾變為現在的四層架構即:
顯示層 業務層 持久層 數據層
我們的Hibernate就成為了持久化層,從原來的(Struts)中的業務層分離出來單獨為一層!軟件結構更加清晰,維護更加方便!
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -