论坛首页 入门技术论坛

感受jpa

浏览 24260 次
锁定老帖子 主题:感受jpa
该帖已经被评为新手帖
作者 正文
   发表时间:2007-01-23  
    这几天,看了jpa(java 持久性 api)的规范,作为ejb3的重要组成部分,jpa 还是值得关注的。看完规范,感觉jpa还是比较的单一的,其目标就是实现java 持久性的通用。jpa采用纯pojo的方式实现,更多的是采用java 5注释。jpa 的优势是多供应商的支持,可以运行在容器之中,也可以运行于容器之外,这就是其优点。

    hibernate 从3.2开始,就开始兼容jpa。同样,jdo,也开始兼容jpa。在orm的领域中,看来jpa已经是王道,规范就是规范。在各大厂商的支持下,jpa的使用开始变得广泛。

    在spring 2.0.1中,正式提供对jpa的支持,目前支持的实现包括toplink,hibernate entitymanager以及openjpa。这也促成了jpa的发展,要知道jpa的好处在于可以分离于容器运行,变得更加的简洁。

    对于ejb来说,实体bean一直是被批评的对象,由于其太复杂和庞大。jpa的出现,很大程度的分离了复杂性。这让ejb的推广也变得容易。

    但愿不久的将来,jpa能成为真正的标准。
   发表时间:2007-01-23  
从功能上来说,JPA现在就是Hibernate功能的一个子集。

问题是Hibernate现在这么强势,而且还是免费的,有什么道理不去用Hibernate,非要换成收费的TopLink?而OpenJPA虽然免费,但功能,性能,普及性更加不用一提。
0 请登录后投票
   发表时间:2007-01-29  
我也看了一下,只要熟悉hibernate或者其他orm框架的,要使用JPA还是非常容易上手的,比如说实体对象的状态,在hibernate有,自由,持久,游离三种,JPA里有new,managed,detached,removed,明眼人一看就知道,这个状态不都是一一对应的,比如说flush方法等等,都是一样的,而其他的比如说Query query = manager.createQuery(sql);这个不是hibernate是什么,只是session变成了manager,所以从hibernate到JPA的代价应该是非常小的
0 请登录后投票
   发表时间:2007-01-30  
robbin 写道
从功能上来说,JPA现在就是Hibernate功能的一个子集。

问题是Hibernate现在这么强势,而且还是免费的,有什么道理不去用Hibernate,非要换成收费的TopLink?而OpenJPA虽然免费,但功能,性能,普及性更加不用一提。


可能就是因为免费,一些公司不会用。在北美一些大公司面试的时候会问你EJB3的一些技术,包括JPA。
0 请登录后投票
   发表时间:2007-01-30  
zijan 写道
robbin 写道
从功能上来说,JPA现在就是Hibernate功能的一个子集。

问题是Hibernate现在这么强势,而且还是免费的,有什么道理不去用Hibernate,非要换成收费的TopLink?而OpenJPA虽然免费,但功能,性能,普及性更加不用一提。


可能就是因为免费,一些公司不会用。在北美一些大公司面试的时候会问你EJB3的一些技术,包括JPA。


是啊 大公司为什么不用开源框架? 郁闷
0 请登录后投票
   发表时间:2007-01-30  
JPA是需要Provider来实现其功能的,Hibernate就是JPA Provider中很强的一个,目前来说应该无人能出其右。

千万不要误导了新手,让他们错以为JPA是和这些个ORM工具平行的什么东西呢。
0 请登录后投票
   发表时间:2007-01-30  
现在来说JPA就是Hibernate的一个功能子集,Hibernate提供了自己的扩展,不管是Annotation上的,还是别的功能类上的,用过了Hibernate再用JPA感觉很多原来可以用的方法都不能用了。感觉有点郁闷,虽然很想用用JPA
0 请登录后投票
   发表时间:2007-01-30  
标准是没办法的,要抽取公共部分,也要向大公司妥协,还是用Hibernate老实一点
0 请登录后投票
   发表时间:2007-01-30  
hibernate是JPA-compliant

就好像JDBC规范一样,sun提供一个标准,其它公司实现而已.
0 请登录后投票
   发表时间:2007-03-08  
toplink也开源了。
0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics