是的,不过那是cmp ejb.cmp里不需要任何和数据库有关的代码,这些都是容器的事...
但bmp里要自己写所有代码 ------------------------------------------------------
           我们还年轻牛奶会有的奶牛也会有的 
             可天天在 csdn 混这些会有吗 ??

解决方案 »

  1.   

    要先配置好数据源,然后在jbosscmp-jdbc.xml里面设置一下,就好用了
    多试试,一试就知道结果了
      

  2.   

    同志不是这么简单的??你说的“在数据库的表上右键,然后选择"Create CMP"的”是正确的。
    在CMP中没有什么Connection程序,与数据库的连接完全在CMP的XML配置文件中,如果你要运行或测试这个CMP你还要有相应的服务器(Weblogic)等,在对于不同的服务器又有相应的描述符:
    我给你一个关于Weblogic的CMP描述符,你看一看:
    这是ejb-jar.xml文件
    <entity>
                <display-name>Product</display-name>
                <ejb-name>Product</ejb-name>
                <home>ThreeChater.ProductRemoteHome</home>
                <remote>ThreeChater.ProductRemote</remote>
                <ejb-class>ThreeChater.ProductBean</ejb-class>
                <persistence-type>Container</persistence-type>
                <prim-key-class>java.lang.String</prim-key-class>
                <reentrant>False</reentrant>
                <cmp-version>2.x</cmp-version>
                <abstract-schema-name>ProductBean</abstract-schema-name>
                <cmp-field>
                    <field-name>productID</field-name>
                </cmp-field>
                <cmp-field>
                    <field-name>name</field-name>
                </cmp-field>
                <cmp-field>
                    <field-name>description</field-name>
                </cmp-field>
                <cmp-field>
                    <field-name>basePrice</field-name>
                </cmp-field>
                <primkey-field>productID</primkey-field>
                <resource-ref>
                    <description />
                    <res-ref-name>jdbc/SQLPool</res-ref-name>//这是说明的数据源
                    <res-type>javax.sql.DataSource</res-type>
                    <res-auth>Container</res-auth>
                </resource-ref>
            </entity>
    下面是与具体的服务器有关的描述文件:
    这是weblogic-ejb-jar.xml文件:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB//EN' 'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
    <weblogic-ejb-jar>
        <weblogic-enterprise-bean>
            <ejb-name>StatelessDate</ejb-name>
            <jndi-name>StatelessDate</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>StatefullAccountBean</ejb-name>
            <jndi-name>StatefullAccountBean</jndi-name>
        </weblogic-enterprise-bean>
        <weblogic-enterprise-bean>
            <ejb-name>Product</ejb-name>
            <entity-descriptor>
                <persistence>
                    <persistence-use>
                        <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
                        <type-version>6.0</type-version>
                        <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
                    </persistence-use>
                </persistence>
            </entity-descriptor>
            <reference-descriptor>
                <resource-description>
                    <res-ref-name>jdbc/SQLPool</res-ref-name>//说明的数据源
                    <jndi-name>TxEJBSql</jndi-name> //说明的是在weblogic 中的数据源的名字
                </resource-description>
            </reference-descriptor>
            <jndi-name>ProductRemote</jndi-name>
        </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    这是weblogic-rdbms-jar.xml文件: 
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE weblogic-rdbms-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB RDBMS Persistence//EN' 'http://www.bea.com/servers/wls700/dtd/weblogic-rdbms20-persistence-700.dtd'>
    <weblogic-rdbms-jar>
        <weblogic-rdbms-bean>
            <ejb-name>Product</ejb-name>
            <data-source-name>TxEJBSql</data-source-name>//说明的是在weblogic 中的数据源的名
            <table-map>
                <table-name>Product</table-name>//对应数据库中的表的名字
                <field-map>
                    <cmp-field>productID</cmp-field>
                    <dbms-column>ProductID</dbms-column>
                </field-map>
                <field-map>
                    <cmp-field>name</cmp-field>
                    <dbms-column>Name</dbms-column>
                </field-map>
                <field-map>
                    <cmp-field>description</cmp-field>
                    <dbms-column>Description</dbms-column>
                </field-map>
                <field-map>
                    <cmp-field>basePrice</cmp-field>
                    <dbms-column>BasePrice</dbms-column>
                </field-map>
            </table-map>
        </weblogic-rdbms-bean>
    </weblogic-rdbms-jar>在CMP中,你是看不到实际的连接数据库的代码的,这些都由服务器来完成!!÷
    歇息
      

  3.   

    Weblogic的CMP描述符,我只要在weblogic的consol里面配置好就可以了,对吗?
      

  4.   

    不是都在Weblogic中配只的,在jb中的可
      

  5.   

    隻要在weblogic中配置數據源就可以了,那些xml文件JB會自動產生!