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

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

实验七:EJB的使用

一、实验目的:

 学习和了解J2EE的EJB规范

 使用会话EJB(stateful&stateless) 

 了解实体EJB(BMP&CMP)。

 了解消息驱动EJB 。

二、实验内容:

 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容器自动完成对数据库的操作你所有做的就是在实体bea n重写入SetXXX或getXXX方法。

三、实验步骤:

1) 软件安装

安装JBoss:到JBoss官方网站http://www.jboss.org/jbossas/downloads/下载JBoss压缩包下载jboss-6.0.0.M1解压后的目录就是JBoss的安装目录注意安装目录不要包含有中文和空格。先检查下是否有Apache占用8080端口在运行的话则先关闭。

同上次实验进入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可以查看运行效果。其中点击Display Selected 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比较更改后的区别。

四、实验心得

本次实验意在让我们学习和了解J2EE的EJB规范、使用会话EJB包括stateful 有状态 和stateless 无状态、 了解消息驱动EJB 。

其中最重要的是要通过这次实验了解有状态EJB和无状态EJB的区别。通过实验对比有状态和无状态EJB的运行结果我首先看到stateful有状态下服务器的切换时连续的而在s t at e l e ss无状态下服务器切换时杂乱无章的。

通过现象进一步了解到在stateful状态下client和server是一一对应的而stateless状态下并不是一一对应所以无状态时哪个服务器处于空闲状态就切换到哪个服务器 因而服务器的切换不是连续的。

随风云25元/月 ,德阳高防云服务器 2核2G 10M 75元/月 内蒙古三线BGP服务器 2核2G 5M

公司介绍成都随风云科技有限公司成立于2021年,是国内领先的互联网业务平台服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的国内BGP、双线高防、香港等优质的IDC资源。公司一直秉承”以人为本、客户为尊、永续创新&...

GigsGigsCloud(年付26美元)国际线路美国VPS主机

已经有一段时间没有听到Gigsgigscloud服务商的信息,这不今天看到商家有新增一款国际版线路的美国VPS主机,年付也是比较便宜的只需要26美元。线路上是接入Cogentco、NTT、AN2YIX以及其他亚洲Peering。这款方案的VPS主机默认的配置是1Gbps带宽,比较神奇的需要等待手工人工开通激活,不是立即开通的。我们看看这款服务器在哪里选择看到套餐。内存CPUSSD流量价格购买地址1...

JustHost俄罗斯VPS有HDD、SSD、NVMe SSD,不限流量低至约9.6元/月

justhost怎么样?justhost服务器好不好?JustHost是一家成立于2006年的俄罗斯服务器提供商,支持支付宝付款,服务器价格便宜,200Mbps大带宽不限流量,支持免费更换5次IP,支持控制面板自由切换机房,目前JustHost有俄罗斯6个机房可以自由切换选择,最重要的还是价格真的特别便宜,最低只需要87卢布/月,约8.5元/月起!总体来说,性价比很高,性价比不错,有需要的朋友可以...

ejb开发为你推荐
二叉树遍历怎么正确理解二叉树的遍历xv播放器下载xv播放器怎么下载?云挂机趣头条后台云挂机辅助后台云挂机辅助有谁用过?想了解实际情况。什么是云平台云平台和云计算的区别是什么?发邮件怎么发怎么发邮箱网络虚拟机VMware虚拟机三种网络模式的区别有哪些?微信电话本怎么用微信电话本好用吗网站地图制作如何制作网站地图sitemap,经验分享网站排名靠前怎么让自己的网站排名靠前空间装扮免费空间装扮有免费的吗?
双线服务器租用 vps优惠码cnyvps 汉邦高科域名申请 免费域名跳转 edgecast l5639 韩国空间 wdcp 2017年黑色星期五 长沙服务器 ibrs 卡巴斯基永久免费版 合肥鹏博士 骨干网络 国外代理服务器软件 免费高速空间 免费cdn 空间租赁 阿里云邮箱登陆 新疆服务器 更多