Jbuilder5+Weblogic 6.1sp1 Entity Bean的制作

Jbuilder5+Weblogic 6.1sp1 Entity Bean的制作

 

 

本文假设使用者已经正确的安装了jbuilder5BAS4.5

安装Weblogic

  本例中用的是Weblogic 6.1sp1,采用默认方式安装,安装目录为C:/bea 系统密码设为12345678 .

  打开Jbuilder,Tools菜单下选择Enterprise Setup,切换到Application Server面板下选择Weblogic 6.0Weblogic installation directory 设置为C:/bea/wlserver6.1 BEA home directory 设置为 C:/bea ,然后点确定。在菜单Project下点击Default Project Properties,选择Servers面板,点击Application server有面的按钮---“….” ,双击应用服务器选择对话框中的Weblogic Application Server 6.0 修改 VM parameters 为:

-ms64m -mx64m -Djava.library.path=C:/bea/wlserver6.1/bin -Dbea.home=C:/bea

-Dweblogic.Domain=mydomain -Dweblogic.Name=myserver

-Djava.security.policy==C:/bea/wlserver6.1/lib/weblogic.policy   -classpath C:/bea/wlserver6.1/lib/weblogic_sp.jar;C:/bea/wlserver6.1/lib/weblogic.jar;

-Dweblogic.management.password=12345678

点确定,关闭Jbuilder.  WebLogic配置完成.

 

制作Entity Bean

  

l         在测试数据库中建表

 首先在数据库中创建一个用来测试的表,数据库名test 表名 test 我们设置两个字段:

name

vrachar(15)

不允许为空

主键

addr

varchar(50)

允许为空

 

l         Weblogic中建立连接池

1.         打开开始菜单中的执行Weblogic目录下的Start Default Server,输入密码”12345678”启动Weblogic

2.         启动”Start Default Console”,输入用户名”system” 密码 “12345678” 进入控制台,在左面菜单中找到”JDBC”项,打开他你会发现子菜单中有一项为”Connection Pools”,右击该项,然后选 ”Configure a new JDBC Connection Pool...” 配置连接池

属性如下表

Name

myDB

URL

jdbc:sybase:Tds:172.16.4.200:5000/test

/172.16.4.200为数据库服务器地址,test为数据库名/

Driver Classname

com.sybase.jdbc2.jdbc.SybDriver

Properties(key=value):

user=sa

ACLName

 

Password

 

完成后点击Creat按钮。

3.         点击Targets标签,选中myserver,把它移入Chosen项,点击Apply

4.         关闭控制台和Weblogic服务。连接池已经建好了。

l         编码

1.         打开Jbuilder,新建一个名为hello项目,并在Required Libraries中添加上Weblogic 6.0

2.         新建一个名为HelloWorldEmpty EJB Group

3.         新建一个Enterpris JavaBean,选择HelloWorld组,点击下一步。package选择hello, Class name为“FistBean”,options选择Container managed persistence EJB 1.1 entity bean 然后点下一步。点击Finish

4.         项目下共有3个文件分别是

First.java

 

package hello;

 

import java.rmi.*;

import javax.ejb.*;

 

/**

 * Title:

 * Description:

 * Copyright:

 * Company:

 * @author 赵新鹏

 * @version 1.0

 */

 

public interface First extends EJBObject {

  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

 

package hello;

 

import java.rmi.*;

import javax.ejb.*;

 

/**

 * Title:

 * Description:

 * Copyright:

 * Company:

 * @author 赵新鹏

 * @version 1.0

 */

 

public class FirstBean implements EntityBean {

  EntityContext entityContext;

     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 ejbLoad() throws RemoteException {

  }

  public void ejbStore() throws RemoteException {

  }

  public void ejbRemove() throws RemoveException, RemoteException {

  }

  public void ejbActivate() throws RemoteException {

  }

  public void ejbPassivate() throws RemoteException {

  }

  public void setEntityContext(EntityContext entityContext) throws RemoteException {

    this.entityContext = entityContext;

  }

  public void unsetEntityContext() throws RemoteException {

    entityContext = null;

  }

  public String getAddr() {

    return addr;

  }

  public void setAddr(String addr) {

    this.addr = addr;

  }

  public String getName() {

    return name;

  }

  public void setName(String name) {

    this.name = name;

  }

}

 

FirstHome.java

 

package hello;

 

import java.rmi.*;

import javax.ejb.*;

 

/**

 * Title:

 * Description:

 * Copyright:

 * Company:

 * @author 赵新鹏

 * @version 1.0

 */

 

public interface FirstHome extends EJBHome {

  public First create(String name) throws CreateException, RemoteException;

  public First create(String name,String addr) throws CreateException, RemoteException;

  public Fist findByPrimaryKey(String primaryKey) throws RemoteException, FinderException;

}

 

5.         点击左面菜单中的HelloWorld.ejbgrp,然后双击 EJB Deployment Descriptor下的First 点击右面窗体下面的Resource References标签,点击面板上的Add按钮,在跳出的输入对话框中输入”helloDB”ok,选择typejava.sql.DataSource。选中helloDB,在下面JNDI Name框中输入myDB.

6.         然后点击标签Persistence,table(s)输入”test”,容器管理表内容如下

CMP

isPK

Field Type

Column Name(s)

Column Type

选中

选中

name

name

varchar(15)

选中

不选

addr

addr

varchar(50)

 

7.         右击EJB Deployment Descriptor下的JDBC DataSources 新建一个名为myDB的数据源,配置如下:

JNDI name

myDB

URL

jdbc:sybase:Tds:olap:5000/test

User name

sa

Password

 

Driver class name

com.sybase.jdbc2.jdbc.SybDriver

配置完成点击“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.         点击EJB Deployment Descriptor,然后点击右面窗口中的 EJB DD Source ,然后选weblogic-cmp-rdbms-jar.xml找到<pool-name></pool-name> 修改为<pool-name>myDB</pool-name>.

9.         右击FirstHome.java 选择 Properties,然后选择Build面板---VisiBroker选中Java2IIOP Seting下的Generate IIOPok

10.     保存后按Ctrl+F9编译,应该没有问题。

11.     新建一个Test EJB Client 全部采用默认设置即可。

12.     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();

  }

然后,保存编译。

13.     右击HelloWorld.ejbgrp,RUN, 完成后再选Deploy Options for “HelloWorld.jar”àDeploy

14.     完成后在浏览器中打开http://127.0.0.1:7001/console  用户名密码分别是 system12345678 在控制台的左面菜单里打开EJB选中HelloWorld,然后再右面窗口中选Targets myserver变成Chosen   .

15.     回到jbuilder中把运行中的Server停掉,然后再重新右击HelloWorld.ejbgrp,RUN

16.     右击FistTestClient1.java RUN,如显示下面的信息则表示运行成功

-- Initializing bean access.

-- Succeeded initializing bean access.

-- Execution time: 1663 ms.

-- Calling create(testName, testAddr)

-- Succeeded: create(testName, testAddr)

-- Execution time: 200 ms.

-- Return value from create(testName, testAddr): weblogic.rmi.cluster.EntityRemoteRef@10f - jvmid: '190 ...

testName

testAddr

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在风能领域,准确预测风速对于风电场的运行与管理至关重要。Matlab作为一个强大的数学计算和数据分析平台,被广泛应用于风速预测模型的构建。本文将深入探讨基于四种风速——随机风、基本风、阵风和渐变风的组合风速预测技术。 我们来理解这四种风速类型: 1. **随机风**:随机风是指风速呈现出随机性的变化,通常由大气湍流引起。在建模中,通常通过统计方法如高斯分布或Weibull分布来模拟这种不确定性。 2. **基本风**:基本风速是指在无特定扰动条件下的平均风速,它是长期观测结果的平均值,通常用于结构设计和风能评估。 3. **阵风**:阵风是短时间内风速显著增强的现象,对建筑物和风力发电机造成的主要威胁之一。阵风的预测涉及到风的脉动特性分析。 4. **渐变风**:渐变风是指风速随时间和空间逐渐变化的过程,常见于风向转变或地形影响下的风场变化。 在Matlab中,利用这四种风速类型进行组合预测,可以提高预测的准确性。预测模型可能包括以下几个步骤: 1. **数据收集与预处理**:收集历史风速数据,包括随机风、基本风、阵风和渐变风的数据,进行异常值检测、缺失值填充以及数据标准化。 2. **特征工程**:提取风速变化的相关特征,如平均值、标准差、极值、频率分布等,这些特征可能对预测有重要影响。 3. **模型选择**:可以选择多种预测模型,如时间序列分析(ARIMA、状态空间模型等)、机器学习算法(线性回归、决策树、支持向量机、神经网络等)或深度学习模型(LSTM、GRU等)。 4. **模型训练**:利用历史数据训练选定的模型,调整模型参数以优化性能,例如通过交叉验证来避免过拟合。 5. **模型验证与评估**:使用独立的测试集验证模型预测效果,常见的评估指标有均方误差(MSE)、平均绝对误差(MAE)和决定系数(R²)。 6. **组合预测**:结合四种风速的不同模型预测结果,可以采用加权平均、集成学习(如bagging、boosting)等方式,以提升整体预测精度。 7. **实时更新与动态调整**:实际应用中,模型需要不断接收新的风速数据并进行在线更新,以适应风场环境的变化。 通过以上步骤,可以构建一个综合考虑各种风速特性的预测系统,这对于风电场的功率输出预测、风电设备的维护计划以及电网调度都具有重要价值。然而,需要注意的是,每个风场的地理环境、气候条件和设备状况都有所不同,因此模型的建立应根据实际情况进行定制和优
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值