有状态会话Bean,与无状态会话Bean

本文详细介绍了EJB3.0的结构体系,涵盖了EJB3.0在J2EE中的位置及其重要组件,如无状态会话Bean (SLSB) 和有状态会话Bean (SFSB) 的概念、生命周期及编写步骤。
 EJB3.0学了有几天了. 下面咱们来回顾一下EJB3.0的结构体系.

   但说到EJB体系.我又不得不说一下J2EE的体系了. 自从SUN公司推出JAVA以来.就力图无所不包,所以JAVA从推出到现在,按理来说分为J2SE,J2ME和J2EE,

   J2SE主要用于桌边应用程序的开发.J2ME主要用于嵌入式系统开发,如手机和PDA编程.(什么是PDA编程?这个嘛,我也不是很清楚,好像是什么嵌入式开发.开发工具好像用Visio Stiudio可以). J2EE是JAVA2的企业版.主要用于分布式网络程序的开发.如电子商务网站.J2SE开发桌面应用软件比起VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。所以现在应用最广泛又最好学的就是J2EE了。J2EE又包括,JSP,Servlet,JAVABean,ejb,Hibernate,和JDBC,javaMail. 所以说学好J2EE并不是很容易的事.有人说3个月就可以学好JAVA.那可是无稽之谈了

       J2EE 应用程序一般分为客户层、Web 层、业务层和企业信息层

J2EE 应用程序的组件有:EJB组件、WEB组件和客户层组件。WEB组件包含Servlet组件和JSP组件。客户层组件包含应用程序客户端组件和Applet组件

J2EE 容器分为EJB 容器、Web 容器、应用程序客户端容器和Applet 容器开发 J2EE 应用程序的不同阶段是:创建组件、组件封装、应用程序汇编以及应用程序部署

J2EE 平台定义了在应用程序开发和部署生命周期中多个不同的角色,如应用程序组件提供者、应用程序汇编者和部署者

J2EE 规范指定了许多 API,在编程中我们可能会使用到这些API .

言归正传.EJB组件包括企业级开发Bean.而企业级开发Bean又包括无状态会话bean(SLSB)和有状态会话Bean(SFSB).还有消息驱动Bean. slsb不保存客户端状态.所以成为无状态,再slsb中,. 消息调用之间没有存储信息.因此方法之间没有保留任何会话状态. sfsb则不同了.sfsb是向业务进程提供服务的bean,它保存客户端调用. slsb生命周期有两个状态.从开始创建到结束. 但sfsb则有三种状态. 其中它多了个挂起状态. 何谓挂起. 例如.我有三个客户端调用我服务器的同一个查询方法. 我现在这个方法只允许两个客户端同时调用. 现在有服务器判断哪一个客户端就久没有对服务器发出请求. 则将该客户端进行挂起操作. 也就是进行序列化操作. 当其他用户操作完. 在对该用户进行反序列化.

slsb的编写步骤:

第一步: 先定义一个包含该会话Bean所有业务方法的接口.

第二步:写一个类实现该接口的所有方法. 并且再类的前面加上两个注解. 如果是SLSB的话用@Stateless.如果是SFSB的话用@StateFul. 第二个注解是@Remote.指名无状态会话Bean的Remote接口.

第三步:编写客户端程序.

//这是编写的接口

 

package com.foshanshop.ejb3;
         
public interface HelloWorld {
         
public String SayHello(String name);
}

 

   //实现接口的类

 

@Stateless
     @Remote ({HelloWorld.
class})
     
public class HelloWorldBean implements HelloWorld {
      
public String SayHello(String name) {
     
return name +"说:你好!世界,这是我的第一个EJB3 哦.";
}


   

 

//编写测试类

 如果是有状态会话Bean则再实现接口的类前的注解@Stateless 改成@Stateful则行. 今天就到这里了. 明天小龙继续讲课.

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值