草庐IT

java - 优缺点 : Hibernate vs. EJB 3

Hibernate和EJB3相对于彼此的优点和缺点是什么?我找到了this帖子,但它并没有真正解决我的问题。如果我对这两种技术都没有任何特别的联系,什么会导致我选择其中一种而不是另一种?或者在某些情况下我想同时使用两者?谢谢,扎克编辑:回应评论:我不太了解EJB3。我只是想了解它是否对我的公司可行。如果EJB3不能与Hibernate相媲美,请解释原因。 最佳答案 JPA提供了Hibernate功能的一个子集,但是EJB3提供了Hibernate没有解决的其他服务(例如Web服务、EJB、定时器服务)与Hibernate相比,JPA

java - 在 Weblogic 10.3 中调用 EJB 时出现 NameNotFoundException

我有一个EJB定义如下:packagecom.foo;@Stateless(mappedName="HelloWorld")publicclassHelloWorldBeanimplementsHelloWorld,HelloWorldLocal....当它部署到Weblogic(WL)时,它获得名称myBean。我不确定这是否重要。我尝试用这段代码调用bean:Hashtableht=newHashtable();ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");ht.put

java - 缓存远程 EJB 3.0 引用

我在想如何才能节省通过jndi查找远程ejb引用的时间。我有一个应用程序需要非常快地运行,但它还必须调用远程ejb,这会减慢它的速度。所以我的解决方案是这样的:我采用了apachecommons-pool库并将其StackObjectPool实现用于我的远程ejb引用缓存。privatestaticfinalObjectPoolpool=newStackObjectPool(newRemoteEjbFactory());工厂看起来像这样:publicstaticclassRemoteEjbFactoryextendsBasePoolableObjectFactory{@Override

java - 在有状态 EJB 3.1 bean 中保持 session ?

我正在开发一个试图结合以下技术的Java网络应用程序:JavaEE6CDIJSF2EJB3.1Spring安全我为我的JSF页面提供基于CDI的支持bean(@ViewScoped、@Named)。我使用@StatelessEJBbean来完成实际工作。我只需要一些session信息,如jSessionCookie(由容器管理)、内部用户名和一些其他内部ID。现在,我想知道将此session信息放在哪里,以便我可以在JSF的支持bean中访问它,同时也将它提供给无状态EJB?我应该使用@StatefulEJBsessionbean还是应该使用@SessionScoped和@Named创

java - 用于简单 CRUD 的 EJB 3 session Bean 设计

我正在编写一个应用程序,它的唯一目的是执行CRUD操作以维护数据库中的记录。一些表/实体之间存在关系。我见过的大多数创建sessionbean的示例都处理复杂的业务逻辑/操作,这些逻辑/操作与许多我没有的实体进行交互。由于我的应用程序非常基础,sessionbean的最佳设计是什么?我正在考虑为每个实体设置一个sessionbean,该sessionbean具有定义的方法CRUD。然后我想到将所有这些sessionbean组合到一个sessionbean中。然后我发现这篇博文很有趣,但我必须承认我并不完全理解它(什么是ServiceFacade?)。我倾向于sessionbean/实体

java - EJB - 查找 'ejb/BookRequestBean' 失败

我是EJB的新手,正在尝试“HelloWorld”类型的EJBJava程序。这是我的EJB:packagedukesbookstore.ejb;@Stateless(name="BookRequestBean",mappedName="ejb/BookRequestBean")@NamedpublicclassBookRequestBean{//Othercodeshere}这是我的客户:Propertiesprop=newProperties();prop.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.enterprise.naming.S

java - EJB 中如何实现事务概念

我想知道事务是如何在EJB内部实现的。我想知道他们用来创建交易的逻辑。如果你能指出一些有用的文章 最佳答案 Hibernate不实现事务,它依赖并包装JDBC事务或JTA事务(容器管理或应用程序管理)。关于EJB,如果您想了解JTA事务管理器的详细信息,您需要精通JTA接口(interface)UserTransaction,TransactionManager,和XAResource在JTAspecification中进行了描述.JDBCAPITutorialandReference,ThirdEdition也有助于理解JDBC驱

java - EJB 与 CDI 和 "Entity Boundary Control"模式

我正在努力了解CDI和EJB以及实体边界控制(ECB)模式。我对ECB模式的理解是Boundary是事务边界的起点和终点。此外,CDI不像EJB那样提供事务支持。所以如果我想成功的实现ECB模式,那么以下是正确的;我可以使用EJB(即@stateless、@stateful、@singleton)实现边界部分,并使用CDI或EJB实现控制层。我可以使用CDI实现边界和控制部分,但在类似于(http://smokeandice.blogspot.com/2009/12/cdi-and-declarative-transactions.html)的边界中实现事务支持我无法使用CDI实现边界

java - Java 7 SE 是否支持 EJB?

如果我需要EJB3.0支持并希望运行Java7,我需要JavaEE还是可以坚持使用SE?过去(许多JDK版本之前),需要JDK的“J2EE”版本才能运行EJB。看来这不再是真的了。请指教。更新:我应该提到该应用程序将在OracleWebLogic10.3.6中运行。 最佳答案 EJB是JavaEE的一部分。但是,如果您想要的是JPA,即使该API包含在JavaEE(here'stheAPIdocumentation)中,您也不再需要用于JPA的JavaEE应用程序服务器(与EJB实体bean的情况不同)。JPA可以与JavaSE一起

java - EJB3.1 系统异常与 javax.ejb.EJBException

在提出我的问题之前,先了解一下EJB3.1异常的背景知识-应用程序异常包括用户定义的已检查或未检查异常@ApplicationException注解所有检查的异常java.lang.Exception&它的子类异常除了java.rmi.RemoteException和它的子类异常系统异常包括java.rmi.RemoteException及其子类异常所有未经检查的异常java.lang.RuntimeException及其子类异常java.lang.Error及其子类异常以下是我在此book中读到的声明InEJBSystemexceptionsarenotexceptedbythecl