1.在数据库中建立一个序列 例: create sequence suntest;
2.创建一个表 例:
create table suntest2
(
id number(9) primary key,
name varchar2(20),
email varchar2(40)
)
3。用jb把表转换成 cmp //不用细说了吧
4。在ejb Desinger中选择创建的cmp suntest2的主键 有一项 in ejbCreate() 无比改为false
这样就会生成一个没有主键参数的ejbCreate()
5.更改weblogic-cmp-rdbms-jar.xml
在<weblogic-rdbms-bean>和</weblogic-rdbms-bean>之间添加
<automatic-key-generation>
<generator-type>ORACLE</generator-type>
<generator-name>suntest</generator-name>
<key-cache-size>1</key-cache-size>
</automatic-key-generation>
这样weblogic在你调用ejbCreate方法的时候就会自动查找suntest这个序列得到下一个值
6。在weblogic上配置数据源 //不用细说了吧
7。部署,测试
---------------------------------------------------------------------------------------------------------
以前这问题困扰了我老长时间
以前的解决方法是是 先创建一个方法从数据库中查出序列的值,然后传给我的ejbCreate当参数
有个严重问题就是我的从数据库中查出序列的值方法没有遵循j2ee架构思想,直接操纵了数据库。
今天得以解决,一个字”爽“。 所以写给和我一样有这个困惑的朋友看了
不足之处欢迎大家指正!