Chinaunix首页 | 论坛 | 博客
  • 博客访问: 482950
  • 博文数量: 1496
  • 博客积分: 79800
  • 博客等级: 大将
  • 技术积分: 9940
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-09 13:22
文章分类

全部博文(1496)

文章存档

2011年(1)

2008年(1495)

我的朋友

分类:

2008-09-09 17:24:38

  摘要:
    本文围绕着“JPA:好与坏”这个主题,Bea的Patrick Linskey对相关常见问题进行解答……

  问题:EJB专家团队是如何摆脱事务描述符的?

  回答:在会话bean和消息驱动bean中,可以通过描述符和注释来控制事务的行为。此外,我们将默认的事务属性更改为“REQUIRED”,这个默认值比以前的值“SUPPORTS”更常用。因此,完全不必为业务方法配置事务行为。

  JPA实体仅供本地使用,重点关注域模型。因此,无法在JPA实体上配置事务性(或远程边界或性)。而是必须使用会话bean façade(或消息驱动bean),才可以通过EJB使用这些实体。通常来说,这是一件好事,配置性、远程处理和事务的粒度应该比持久化数据的粒度粗很多。JPA着重关注持久化数据,以及与EJB的其他部分和 EE规范集成起来照管其他企业关注点。

  问题:推荐对主键使用“long”还是“Long”?如果允许使用null作为值,将会如何?

  回答:这实际上取决于您的数据模型。如果您的数据模型允许主键为null,那么使用Long,如果您的数据模型规定主键列不能为null,则使用long更合适。总的来说,我认为对于非复合主键,允许null作为合法值容易产生混淆,因此我倾向于使用long,而不是Long。

  问题:您说EJB 2.0不支持继承,但是可以在几个不同位置(远程/bean)使用继承,只是不在本地使用而已。请解释一下。

  回答:根据EJB 2.1规范的附录D3:

  当前的EJB规范未指定组件继承的概念。

  另一方面,JPA规范确实规定了实体继承的概念。我们已经处理了EJB 2.1规范中指出的各种问题和复杂性,现在允许完全的多态查询和关联。

  问题:BEA计划什么时候支持/发布EJB3?

  WebLogic Server 10 Technology Preview 是完全符合规范的 EE 5应用。它包括完整的EJB3支持。WebLogic Server 10大概于三月下旬发布。

  此外,Kodo 是完全符合规范的生产就绪JPA实现,并且已经发布。

  问题:JPA是否支持组合主键?

  回答:JPA支持自然ID和组合ID,以及数据库指派或实现指派的数字值。

  问题:是否存在Spring模板,像JDBC模板一样可以在容器外部使用?

  回答:是的,Spring 2有JPA模板。但是,Spring 2可以对任何标记着@Repository的bean执行JPA异常转译。因此,总的来说,对于新的应用程序,最好直接使用JPA API,而不是另一个模板层。对于使用模板和正在迁移到JPA的现有应用程序来说,使用模板方法比较合理。

  此外,可以像在Java EE中一样将JPA的持久化单元部署到Spring,Spring对JPA规范中指出的EntityManager注入和查找服从容器规则。

  问题:JPA是否支持JDK1.4?

  回答:JPA需要Java 5或更新版本。

问题:使用范围查询时,它是否也会返回结果总数(例如,返回538项结果中的1-10项)?

[1]     

【责编:Youping】

--------------------next---------------------

阅读(226) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~