右键软件系统结构与开发环境实验报告-jboss平台下ejb的使用-范本64

ejb开发  时间:2021-02-08  阅读:()

试验七、 Jboss平台下EJB的使用

一、实验目的:

学习和了解J2EE的EJB规范

使用会话EJB(stateful&stateless) 

了解实体EJB(BMP&CMP) 

了解消息驱动EJB 。

二、实验环境及软件

JBoss,ecl ipse

三、实验内容及原理

 EJB简介: EJB是sun的服务器端组件模型最大的用处是部署分布式应用程序类似微软的.com技术。凭借java跨平台的优势用EJB技术部署的分布式系统可以不限于特定的平台。 EJB(EnterpriseJavaBean)是J2EE的一部分定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。在J2EE里Enterprise Java Beans(EJB)称为Java企业Bean是Java的核心代码分别是会话BeanSession Bean实体Bean Entity Bean和消息驱动Bean MessageDriven Bean。下面给出EJB在J2EE的5层模型中的位置及其分类结构图

EJB的组件

EJB的调用方法

EJB的主(Home)接口客户端利用EJB主接口来管理EJB的生命周期 EJB主接口允许客户端创建、移除和查找EJB。当EJB被发布后 EJB主接口stub被绑定到JNDI 。

 会话EJB基本EJB一般用于实现业务逻辑多在分布环境中应用基本功能与一般Java bean相差不大跨地址空间使用可视为远程对象的扩展。分为有状态与无状态两种。

有状态与无状态的差别a) 部署上的差别注入时候有状态是Stateful 无状态是statelessb) 调用实现上效果的差别 Stateful Session Bean可以一对一保持调用客户的状态StatelessSession Bean在方法调用之间不会保持某个调用客户的状态

 实体EJB(BMP&CMP) a) BMP(Bean managed persistence)  BMP是在Bean中完成对数据库JDBC的各种调用也就是说在你的实体bean(entity bean)中明确写入了SQL语句如“insert . . ”或“select . .”,并且使用Datasource获得一个数据库资源以及连接(connection)从而对数据库直接进行增加、删除和修改。b) CMP(Container managed persistence) CMP是由EJB容器自动完成对数据库的操作。

四、实验步骤

1) 软件安装

同上次实验进入bin 目录运行run.bat看是否启动正常。浏览器打开访问http://localhost:8080。

2) 服务器配置

打开ecl ipse按上次实验步骤配置Jboss服务器。在正下方的视图窗口中点击Servers

开始创建一个JBOSS服务器选择JBOSS Community下的JBOSS AS 6.x进入下一步然后再Home Directory找到刚才解压缩的Jboss目录然后finish配置完成。如下图

3) 新建会话EJB项目 代码在code文件夹

在左边view右键NewJava Project,创建一个java工程取名MyFirstEJB。右键MyFirstEJB

工程Bui ld PathConfigure Bui ld PathLibrariesAdd External JARS。找到Jboss安装目录下ci lent文件夹里的jbossal l-cl ient.jar添加所需要的Jboss的jar包。

在src目录上右键新建NewInterface创建一个接口包名com.ejb接口取名为sessionDemo然后添加代码如下图

在src目录上右键新建NewClass依次创建两个类包名com.bean类取名分别为sessionDemoBeanStateless和sessionDemoBeanStateful 这两个类继承上面的sessionDemo接口然后添加代码。

4) 发布

右键MyFirstEJB工程ExportJavaJAR Fi le  将工程导出到Jboss 目录下的server\default\deploy导出的JAR包名称为MyFirstEJB.jar。

点击绿色按钮启动Jboss服务器在消息中可以看到刚刚部署的情况

5) 测试

另外创建一个java工程进行测试右键NewJava Project,创建一个java工程取名EJBtest。右键EJBtest工程Bui ld PathConfigure Bui ld PathLibrariesAdd External JARS。找到Jboss安装目录下ci lent文件夹里的jbossal l-cl ient.jar添加所需要的Jboss的jar包。

在src 目录上右键新建NewPackage创建一个包包名com.ejb。将MyFirstEJB里的sessionDemo.java接口拷贝到com.ejb包里。

在src 目录上右键新建NewClass依次创建三个类包名com.cl ient类取名分别为EJBcl ient1、 EJBcl ient2、 EJBcl ient3然后添加代码。

分别右键EJBcl ient1.java、 EJBcl ient2.java、 EJBcl ient3.java run asjava appl ication在下方的Console可以查看运行效果。其中点击DisplaySelected Console 红窗口可以切换不同的程序运行的结果。

在EJBcl ient1.java、 EJBcl ient2.java、 EJBcl ient3.java中更改代码lookup查找项改成Sd=(sessionDemo)ctx. lookup(“sessionDemoBeanStateful/remote”);

重新分别右键EJBcl ient1.java、 EJBcl ient2.java、 EJBcl ient3.java run asjava appl ication比较更改后的区别。

结果截图如下

Sta te less

Stateful 

五、实验小结

当处于stateless状态时 cl ient不会独占接口 当其不用时会将接口释放所以在statueless状态下三个cl ient所用的接口是不一定的一直变化可以是相同的

而处于stateful状态时 cl ient会独占接口所以三个cl ient所用的接口都是不同的而且至始至终都是同一个。

Dataideas:$1.5/月KVM-1GB/10G SSD/无限流量/休斯顿(德州)_主机域名

Dataideas是一家2019年成立的国外VPS主机商,提供基于KVM架构的VPS主机,数据中心在美国得克萨斯州休斯敦,主机分为三个系列:AMD Ryzen系列、Intel Xeon系列、大硬盘系列,同时每个系列又分为共享CPU和独立CPU系列,最低每月1.5美元起。不过需要注意,这家没有主页,你直接访问根域名是空白页的,还好他们的所有套餐支持月付,相对风险较低。下面以Intel Xeon系列共...

香港CN2云服务器 1核 2G 35元/月 妮妮云

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款到网站余额,超过2天...

稳爱云(26元),香港云服务器 1核 1G 10M带宽

稳爱云(www.wenaiyun.com)是创建于2021年的国人IDC商家,主要目前要出售香港VPS、香港独立服务器、美国高防VPS、美国CERA VPS 等目前在售VPS线路有三网CN2、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。机房采用业内口碑最好香港沙田机房,稳定,好用,数据安全。线路采用三网(电信,联通,移动)回程电信cn2、cn2 gia优质网络,延迟低,速度快。自行封装的...

ejb开发为你推荐
在线漏洞检测网站好像有漏洞,直接看代码可以找出来吗?免费开通黄钻能免费开通黄钻吗??天天酷跑刷积分教程最近一直有人说天天酷跑刷积分,怎么刷的。金山杀毒怎么样金山杀毒好吗个性qq资料`谁有最新 最有个性的QQ个性资料百度抢票浏览器现在火车票越来越难买了,新版百度手机浏览器,除了抢票外,还有什么其他功能吗?吴晓波频道买粉《充电时间》的节目跟《吴晓波频道》哪个好听?手机区号手机电话号码开头95共15位号码是什么手机号码?申请证书手机申请证书如何建立一个网站如何建立一个网站?
vps代理 山东vps 国内免备案主机 westhost 免费ftp空间 realvnc 万网优惠券 美国php空间 服务器架设 免费个人网站申请 dux 怎么测试下载速度 个人免费主页 raid10 dnspod xuni 服务器托管价格 重庆联通服务器托管 亿库 cdn加速 更多