请问:
Hibernate Core ,Hibernate Annotations ,JPA,EJB 四者的意思,关系和比较
谢谢

解决方案 »

  1.   

    Hibernate Core 就是Hibernate呢。 是Hibernate的核心,包含一系列东西。Hibernate Annotations是借助于JDK1.5的注释特性实现对象关系映射,也就是不要我们写hbm.xml文件来映射一个类对应一张表,直接在代码中写,不过用这个也是有利有弊,(弊,采用注释的方式编译之后生成。class的,如果我们数据库发生了改动,那么必须要重新改源码,重新生成.class文件,而采用hbm.xml映射则不需要,不过弊端在3.0的版本中引进了根据映射UPDATE数据库的功能,只需要一段配置:"<prop key="hibernate.hbm2ddl.auto">update</prop>")JPA(Java Persistence API),看这个单词你就知道了,也是一种ORM的对象关系映射解决方案,HIBERNATE的Hibernate Annotations就是引进他的,也用于EJB中实现对象关系映射。EJB 概念就很庞大了,百度百科里面肯定有介绍的,你自己看吧。
      

  2.   

    <prop key="hibernate.hbm2ddl.auto">update </prop>
      

  3.   

    Hibernate Core ,Hibernate Annotations ,JPA,EJB
    首先Hibernate Core和Hibernate Annotations是有一定关系的。Hibernate Core是Hibernate这个orm框架的基础实现。它是框架的核心,没有Annotations它一样可以很好的工作。而Hibernate Annotations可以认为是对核心框架中配置文件的一个turning.目的是为了简化核心框架中繁琐的配置。Hibernate Annotations的实现是基于核心框架的。如果lz对造作系统了解的话可以类比kernel和shell的关系。
    再来说说JPA和EJB,可以说JPA是EJB的一个子集,也就是说EJB中对持久层的管理时用的就是JPA,但EJB中还有很多其他功能和JPA时没有关系的。同样和Hibernate Core ,Hibernate Annotations 也没有直接关系。
    而JPA和Hibernate的关系是JPA的80%内容是和Hibernate类似的,因为他们的创始小组中存在同一个人的思想。
      

  4.   

    这么讲吧
    EJB是企业级的应用,是一套框架
    JAP是EJB框架里面用于将数据持久化的技术
    Hibernate Annotations + Hibernate EntityManager 是 Hibernate实现的JPA,别的公司也有,比如Oracle的Toplink
    Hibernate Core 这个是核心, Hibernate的JPA实现的底层还是使用的这个核心的,而不是重新开发了一套。请参考
    Hibernate Core ,Hibernate Annotations ,JPA,EJB 四者的意思,关系和比较