⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ejb-jar.xml

📁 ejb20_src_relationships.rar
💻 XML
字号:
<?xml version="1.0"?>

<!DOCTYPE ejb-jar PUBLIC 
'-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 
'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>

<ejb-jar>
  <enterprise-beans>
    <session>
      <ejb-name>MusicLibraryEJB</ejb-name>
      <home>examples.ejb20.relationships.bands.MusicLibraryHome</home>
      <remote>examples.ejb20.relationships.bands.MusicLibrary</remote>
      <ejb-class>examples.ejb20.relationships.bands.MusicLibraryBean</ejb-class>
      <session-type>Stateless</session-type>
      <transaction-type>Container</transaction-type>
    </session>
    <entity>
      <ejb-name>BandEJB</ejb-name>
      <local-home>examples.ejb20.relationships.bands.BandHome</local-home>
      <local>examples.ejb20.relationships.bands.Band</local>
      <ejb-class>examples.ejb20.relationships.bands.BandBean</ejb-class>
      <persistence-type>Container</persistence-type>
      <prim-key-class>examples.ejb20.relationships.bands.BandPK</prim-key-class>
      <reentrant>False</reentrant>
      <cmp-version>2.x</cmp-version>
      <abstract-schema-name>BandEJB</abstract-schema-name>
      <cmp-field>
        <field-name>name</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>founder</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>startDate</field-name>
      </cmp-field>
      <query>
        <query-method>
          <method-name>findByName</method-name>
          <method-params>
            <method-param>java.lang.String</method-param>
          </method-params>
        </query-method>
        <ejb-ql>
          <![CDATA[SELECT OBJECT(a) FROM BandEJB AS a WHERE a.name = ?1]]>
        </ejb-ql>
      </query>
      <query>
        <query-method>
          <method-name>findAll</method-name>
          <method-params>
          </method-params>
        </query-method>
        <ejb-ql>
          <![CDATA[SELECT OBJECT(a) FROM BandEJB AS a]]>
        </ejb-ql>
      </query>
    </entity>

    <entity>
      <ejb-name>RecordingEJB</ejb-name>
      <local-home>examples.ejb20.relationships.bands.RecordingHome</local-home>
      <local>examples.ejb20.relationships.bands.Recording</local>
      <ejb-class>examples.ejb20.relationships.bands.RecordingBean</ejb-class>
      <persistence-type>Container</persistence-type>
      <prim-key-class>examples.ejb20.relationships.bands.RecordingPK</prim-key-class>
      <reentrant>False</reentrant>
      <cmp-version>2.x</cmp-version>
      <abstract-schema-name>RecordingEJB</abstract-schema-name>
      <cmp-field>
        <field-name>title</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>bandName</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>bandFounder</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>sales</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>numberSold</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>recordingDate</field-name>
      </cmp-field>
      <query>
         <query-method>
           <method-name>findBigRecordings</method-name>
           <method-params>
             <method-param>long</method-param>
           </method-params>
         </query-method>
         <ejb-ql>
           <![CDATA[SELECT OBJECT(a) FROM RecordingEJB AS a WHERE a.numberSold > ?1]]>
         </ejb-ql>
      </query>
      <query>
         <query-method>
           <method-name>findByTitle</method-name>
           <method-params>
             <method-param>java.lang.String</method-param>
           </method-params>
         </query-method>
         <ejb-ql>
           <![CDATA[SELECT OBJECT(a) FROM RecordingEJB AS a WHERE a.title = ?1]]>
         </ejb-ql>
      </query>
      <query>
         <query-method>
           <method-name>findNotByBand</method-name>
           <method-params>
             <method-param>examples.ejb20.relationships.bands.Band</method-param>
           </method-params>
         </query-method>
         <ejb-ql>
           <![CDATA[SELECT OBJECT(a) FROM RecordingEJB AS a WHERE a.band <> ?1]]>
         </ejb-ql>
      </query>
    </entity>

    <entity>
      <ejb-name>FanClubEJB</ejb-name>
      <local-home>examples.ejb20.relationships.bands.FanClubHome</local-home>
      <local>examples.ejb20.relationships.bands.FanClub</local>
      <ejb-class>examples.ejb20.relationships.bands.FanClubBean</ejb-class>
      <persistence-type>Container</persistence-type>
      <prim-key-class>examples.ejb20.relationships.bands.FanClubPK</prim-key-class>
      <reentrant>False</reentrant>
      <cmp-version>2.x</cmp-version>
      <abstract-schema-name>FanClubEJB</abstract-schema-name>
      <cmp-field>
        <field-name>bandName</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>bandFounder</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>text</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>memberCount</field-name>
      </cmp-field>
      <query>
         <query-method>
           <method-name>findBigClubs</method-name>
           <method-params>
             <method-param>int</method-param>
           </method-params>
         </query-method>
         <ejb-ql>
           <![CDATA[SELECT OBJECT(a) FROM FanClubEJB AS a WHERE a.memberCount >= ?1]]>
         </ejb-ql>
      </query>
      <query>
         <query-method>
           <method-name>ejbSelectAfterDateExcludeBand</method-name>
           <method-params>
             <method-param>java.sql.Date</method-param>
             <method-param>examples.ejb20.relationships.bands.Band</method-param>
           </method-params>
         </query-method>
         <ejb-ql>
           <![CDATA[SELECT OBJECT(r) FROM FanClubEJB as f, r in f.band.recordings
                    WHERE  r.recordingDate >= ?1 AND f.band <> ?2]]>
         </ejb-ql>
      </query>
    </entity>

    <entity>
      <ejb-name>ArtistEJB</ejb-name>
      <local-home>examples.ejb20.relationships.bands.ArtistHome</local-home>
      <local>examples.ejb20.relationships.bands.Artist</local>
      <ejb-class>examples.ejb20.relationships.bands.ArtistBean</ejb-class>
      <persistence-type>Container</persistence-type>
      <prim-key-class>java.lang.Integer</prim-key-class>
      <reentrant>False</reentrant>
      <cmp-version>2.x</cmp-version>
      <cmp-field>
        <field-name>id</field-name>
      </cmp-field>
      <cmp-field>
        <field-name>name</field-name>
      </cmp-field>
      <primkey-field>id</primkey-field>
    </entity>

  </enterprise-beans>

  <relationships>
    <ejb-relation>
      <ejb-relation-name>Band-Recording</ejb-relation-name>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          Band-Has-Recordings
        </ejb-relationship-role-name>
        <multiplicity>one</multiplicity>
        <relationship-role-source>
          <ejb-name>BandEJB</ejb-name>
        </relationship-role-source>
        <cmr-field>
          <cmr-field-name>recordings</cmr-field-name>
          <cmr-field-type>java.util.Set</cmr-field-type>
        </cmr-field>
      </ejb-relationship-role>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          Recording-Has-Band
        </ejb-relationship-role-name>
        <multiplicity>many</multiplicity>
        <relationship-role-source>
          <ejb-name>RecordingEJB</ejb-name>
        </relationship-role-source>
       <cmr-field>
          <cmr-field-name>band</cmr-field-name>
        </cmr-field>
      </ejb-relationship-role>
    </ejb-relation>

    <ejb-relation>
      <ejb-relation-name>Band-FanClub</ejb-relation-name>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          Band-Has-FanClub
        </ejb-relationship-role-name>
        <multiplicity>one</multiplicity>
        <relationship-role-source>
          <ejb-name>BandEJB</ejb-name>
        </relationship-role-source>
        <cmr-field>
          <cmr-field-name>fanClub</cmr-field-name>
        </cmr-field>
      </ejb-relationship-role>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          FanClub-Has-Band
        </ejb-relationship-role-name>
        <multiplicity>one</multiplicity>
        <cascade-delete/>
        <relationship-role-source>
          <ejb-name>FanClubEJB</ejb-name>
        </relationship-role-source>
       <cmr-field>
          <cmr-field-name>band</cmr-field-name>
        </cmr-field>
      </ejb-relationship-role>
    </ejb-relation>

    <ejb-relation>
      <ejb-relation-name>Band-Artist</ejb-relation-name>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          Bands-Have-Artists
        </ejb-relationship-role-name>
        <multiplicity>many</multiplicity>
        <relationship-role-source>
          <ejb-name>BandEJB</ejb-name>
        </relationship-role-source>
        <cmr-field>
          <cmr-field-name>artists</cmr-field-name>
          <cmr-field-type>java.util.Set</cmr-field-type>
        </cmr-field>
      </ejb-relationship-role>
      <ejb-relationship-role>
        <ejb-relationship-role-name>
          Artists-Have-Bands
        </ejb-relationship-role-name>
        <multiplicity>many</multiplicity>
        <relationship-role-source>
          <ejb-name>ArtistEJB</ejb-name>
        </relationship-role-source>
        <cmr-field>
          <cmr-field-name>bands</cmr-field-name>
          <cmr-field-type>java.util.Set</cmr-field-type>
        </cmr-field>
      </ejb-relationship-role>
    </ejb-relation>
  </relationships>

  <assembly-descriptor>
    <container-transaction>
      <method>
        <ejb-name>MusicLibraryEJB</ejb-name>
	      <method-name>*</method-name>
      </method>
      <trans-attribute>Required</trans-attribute>
    </container-transaction>

    <container-transaction>
      <method>
        <ejb-name>BandEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <trans-attribute>Required</trans-attribute>
    </container-transaction>
    
    <container-transaction>
      <method>
        <ejb-name>FanClubEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <trans-attribute>Supports</trans-attribute>
    </container-transaction>
    
    <container-transaction>
      <method>
        <ejb-name>ArtistEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <trans-attribute>Supports</trans-attribute>
    </container-transaction>

    <container-transaction>
      <method>
        <ejb-name>RecordingEJB</ejb-name>
        <method-name>*</method-name>
      </method>
      <trans-attribute>Required</trans-attribute>
    </container-transaction>

  </assembly-descriptor>

  <ejb-client-jar>ejb20_relationships_bands_client.jar</ejb-client-jar>

</ejb-jar>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -