⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hibernate.txt

📁 里面是Hibernate.rar的资料
💻 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 + -