下面是制作Entity Bean,数据库是mysql 在mysql中建表: 首先在数据库中创建一个用来测试的表,数据库名test 表名 test 我们设置两个字段: name vrachar(15)不答应为空主键 addr varchar(50)答应为空
在Weblogic中建立连接池: 1.打开开始菜单中的执行Weblogic目录下的Start Default Server,输入密码”12345678”启动Weblogic。 2.启动”Start Default Console”,输入用户名”system” 密码 “12345678” 进入控制台,在左面菜单中找到”JDBC”项,打开他你会发现子菜单中有一项为”Connection Pools”,右击该项,然后选 ”Configure a new JDBC Connection Pool...” 配置连接池 属性如下表 Name mysqlpool URLjdbc: jdbc:mysql://localhost/test /test为数据库名/ Driver Class nameorg.gjt.mm.mysql.Driver Properties(key=value):user=root Password 完成后点击Creat按钮。 3.点击Targets标签,选中myserver,把它移入Chosen项,点击Apply 4. ”JDBC”项中选中Data Sources,右击该项,然后选 ”Configure a new JDBC Connection Pool...” 配置数据源。 属性如下表 Name: mysql JNDI Name:mysql Pool Name:mysqlpool 剩下的保持默认。 5.点击Targets标签,选中myserver,把它移入Chosen项,点击Apply 6.关闭控制台和Weblogic服务。连接池和数据源已经建好了。
1.打开Jbuilder,新建一个名为hello项目,并在wizard的第2步中,Required Libraries中添加上Weblogic 6.1。 2.新建一个名为HelloWorld的EJB Moudle。 3.新建一个Enterpris JavaBean 1.x,选择HelloWorld组,点击下一步。package选择hello, Class name为“FistBean”,options选择Container managed persistence EJB 1.1 entity bean 然后点下一步。点击Finish。 4.项目下共有3个文件分别是 First.java,FirstHome.java,FirstBean.java 在First.java中加入 public java.lang.String getAddr() throws RemoteException; public java.lang.String getName() throws RemoteException; public void setAddr(java.lang.String addr) throws RemoteException; public void setName(java.lang.String name) throws RemoteException; 在FistBean.java中 先删掉其中的: public String ejbCreate() throws CreateException { /**@todo: Implement this method*/ return null; } public void ejbPostCreate() throws CreateException { } 加入 public String name; public String addr; public String ejbCreate(String name,String addr) throws CreateException, RemoteException { setName(name); setAddr(addr); return null; } public String ejbCreate(String name) throws CreateException, RemoteException { return ejbCreate(name,null); } public void ejbPostCreate(String name,String addr) throws CreateException, RemoteException { } public void ejbPostCreate(String name) throws CreateException, RemoteException { } public void setName(String name){ this.name = name; } public void setAddr(String addr){ this.addr = addr; } public String getName(){ return this.name; } public String getAddr(){ return this.addr; } 在FirstHome.java中 删掉: public First create() throws RemoteException, CreateException; 加入: public First create(String name) throws CreateException, RemoteException; public First create(String name,String addr) throws CreateException, RemoteException;
5.点击左面菜单中的HelloWorld,然后双击下面的First, 点击右面窗体下面的Resource References标签,点击面板上的Add按钮,在跳出的输入对话框中输入”First”点ok,选择type为java.sql.DataSource。选中First,在下面JNDI Name框中输入hello.FirstHome。选中下面的cmp选项。 在WebLogic6.x properties标签中,第一行(data-source-name)中加入mysql 6.展开First,双击cmp1.1,table(s)输入”test”,容器治理表内容如下 isCMP isPK Field TypeColumn Name(s)Column Type 选中 选中 name namevarchar(15) 选中 不选 addr addrvarchar(50) 7.右击EJB Deployment Descriptor下的JDBC1 DataSources 新建一个名为mysql的数据源,配置如下: JNDI name mysql URLjdbc: jdbc:mysql://localhost/test User name root Password Driver class name org.gjt.mm.mysql.Driver 配置完成点击“Test Connection”如正确则显示 Attempting to connect to database... Connection sUCceeded. 假如显示下面的信息 Attempting to connect to database... Driver not on classpath. Add the driver to the classpath using the Set Classpath command. 则表示数据库的jdbc驱动并不在classpath里,把数据库的驱动添加到项目的Required Libraries中去。 8.双击左边的HelloWorld,然后点击右面窗口中的 EJB DD Source ,然后选weblogic-cmp-rdbms-jar.xml找到 datasource修改为mysql. 9.保存后按Ctrl+F9编译,应该没有问题。 10.新建一个Test EJB Client 全部采用默认设置即可。 11.再main方法里面找到 FistTestClient1 client = new FistTestClient1(); 然后再后加入下面的代码: First ff=client.create("testName","testAddr"); try { System.out.println(ff.getName()); System.out.println(ff.getAddr()); } catch (java.rmi.RemoteException ex) { ex.printStackTrace(); } 然