• What is therelationship between @EJB and ejb-ref/ejb-local-ref?


    http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html

    What is therelationship between @EJB and ejb-ref/ejb-local-ref?


    The @EJB annotationand the ejb-ref/ejb-local-ref .xmlelements are used to specify the same semantic information. Specifically, that a Java EE component has adependency on a local or remote EJB component. Every @EJB canbe translated into an equivalent ejb-ref/ejb-local-ref.  @EJB iseasier to use but it serves the same purposeas ejb-ref/ejb-local-ref.  Here's a table with more details :

    @EJB attribute
    Description
    Default value
    ejb-refequivalent
    ejb-local-refequivalent
    name
    Unique location within the private component namespace(java:comp/env). 
    field-level : <fully-qualifiedname of declaringclass>/<field-name>

    method-level : <fully-qualifiedname of declaring class>/<propertyname>

    class level : name isrequired.  
    ejb-ref-name


    ejb-ref-name


    beanInterface
    For EJB 3.x business interfaces, the Local or Remote businessinterface of the session bean.

    For EJB 2.x, the Home/LocalHome interface of the session/entitybean.
    field-level : the type of the declared field.

    method-level : the type of the single setter parameter

    class level : beanInterface isrequired.


    For EJB 3.x :<remote>

    For EJB 2.x :
    <home>
    For EJB 3.x : 
    <local>

    For EJB 2.x :
    <local-home>
    beanName
    ejb-name (not global JNDI name)of the target ejb component within the application.  This can be used whenever the target ejbcomponent is defined within the same application as the referencingcomponent, regardless of local vs. remote.   Theonly time it can't be used is if the @EJB refersto a Remote interface (3.x or 2.x) that is defined outside theapplication.  
    Automatically resolved if there is only one EJB component withinthe application that exposes  the valueof beanInterface
    ejb-link
    ejb-link
    lookup

    *(Added in EJB 3.1)
    Specifies the portable JNDI nameof the target EJB component to whichthis @EJB dependencyrefers.   This should be usedinstead of mappedName incases where an @EJB dependencyneeds to be resolved to a Remote EJB component defined in adifferent application.  It can also be used tochain one @EJB dependencyto another @EJB dependency. 
    n/a
    lookup-name
    lookup-name
    mappedName
    Specifies the product-specific name of the target Remote EJBcomponent.  For GlassFish, this refers to theglobal JNDInameof the target Remote EJB component.  

    Not applicable for local interfacesbecause beanName canalways be used instead.

    *(Should not be used in EJB 3.1. See lookup instead)
    If the target EJB component is defined within the same applicationand the beanNamedefaultapplies, no additional mapping is required.

    Otherwise, the target global JNDI namewill be set to the value of beanInterface 
    mapped-name
    n/a




     
  • 相关阅读:
    三元组顺序结构实现稀疏矩阵相加,行序优先(Java语言描述)
    行逻辑链接的顺序表实现稀疏矩阵的相乘(Java语言描述)
    各种矩阵压缩原理(书本上没有讲到的具体公式推理过程)
    KMP算法的实现(Java语言描述)
    链表一元多项式计算器的实现(Java语言描述)
    链表的实现(Java语言描述)
    队列的链式存储方式的实现(Java语言描述)
    Java泛型数组
    三元组表压缩存储稀疏矩阵实现稀疏矩阵的快速转置(Java语言描述)
    利用栈实现算术表达式求值(Java语言描述)
  • 原文地址:https://www.cnblogs.com/leeeee/p/7276693.html
Copyright © 2020-2023  润新知