开发有状态会话 Bean

您可以为 Enterprise JavaBeans™ (EJB) 1.0 规范中引入并由 EJB 3.0 规范进行了显著简化的有状态会话 Bean 创建 Bean 实现类。有状态 Bean 是一种类型的会话 Bean,供单个客户机在其生命周期中使用,并且与调用它的客户机保持会话式状态。

开始之前

确保您了解实现的每个注释的继承规则。例如,@TransactionManagement 注释仅对有状态会话 Bean 类进行编码。 不能在有状态会话 Bean 类所扩展的类中或类继承树的更高级别的类中使用 @TransactionManagement 注释。

关于此任务

有状态会话 Bean 可以具有以下视图:非接口逻辑视图(EJB 3.1 中新增)、业务本地视图、业务远程视图、EJB 2.1 本地视图和 EJB2.1 远程客户机视图。一个示例是购物车,在线购物会话期间此示例中的客户机将商品添加到购物车。
以下示例显示了一个基本的有状态会话 Bean:
package com.ibm.example;

public interface ShoppingCart {
    void addToCart (Object o);
    Collection getContents();
}

package com.ibm.example;

@Stateful
public class ShoppingCartBean implements ShoppingCart {
    private ArrayList contents = new ArrayList();
    
    public void addToCart (Object o) {
        		contents.add(o);
    }
    public Collection getContents() {
        return contents;
    }
} 
与其他企业 Bean 类型一样,您也可以在部署描述符中声明有状态会话 Bean 的元数据,而不是使用注释进行声明;例如:
<?xml version="1.0"?>
<ejb-jar
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
  version="3.1">
  	<enterprise-Beans>
    <ejb-name>ShoppingCartBean</ejb-name>
    <business-local>com.ibm.example.ShoppingCart</business-local>
    <ejb-class>com.ibm.example.ShoppingCartBean</ejb-class>
    <session-type>Stateful</session-type>
  </enterprise-beans>
</ejb-jar>

过程


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_sfsb
文件名:tejb_sfsb.html