站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Java 专题循速渐进学用Session Bean(三)

循速渐进学用Session Bean(三)

摘要: 从编程的角度看,创建无状态的Session Bean和创建有状态的是一样简单的
  创建无状态的Session Bean

  从编程的角度看,创建无状态的Session Bean和创建有状态的是一样简单的。除了在配置工具里修改一个设置外,仅有的一点不同是在bean的初始设计阶段,无状态的Session Bean并不记得方法调用之间的任何东西,bean需要的任何消息都必须由客户端获得。虽然无状态的Session Bean并不记得面向session的数据,不过可以在一个无状态的session bean中存放数据,只是不能存放与客户端相关的数据。

  在HelloWorldSession的例子中,该bean在方法调用之间仍记得一个问候的字符串。例如,你调用setGreeting来修改欢迎词,当你调用getGreeting时,该session会记得保存的欢迎词。

  列表6.5“Hello World”session bean Remote 接口(无状态版本)

<table width="100%" bgColor=#ffffff> <tr> <td>

Listing 6.5 Source Code for StatelessHello.java
package usingj2ee.hello;

import java.rmi.*;
import javax.ejb.*;

/** Defines the methods you can call on a StatelessHello object */

public interface StatelessHello extends EJBObject
{

/** Returns a greeting for the named object */
public String greet(String thingToGreet) throws RemoteException;

}

</td></tr></table>

  在这个例子中,Remote接口仅提供了一个greet方法,该方法接收一个参数并且返回一个欢迎词。例如,如果传送“World”参数给greet,greet方法将返回“Hello World!”。

  列表6.6展示了StatelessHello bean的Home接口。

<table width="100%" bgColor=#ffffff> <tr> <td>

Listing 6.6 Source Code for StatelessHelloHome.java
package usingj2ee.hello;

import java.rmi.*;
import javax.ejb.*;

/** Defines the methods for creating a StatelessHelloWorld */

public interface StatelessHelloHome extends EJBHome
{

/** Creates a StatelessHello session bean. A stateless session bean
can't have a create method that takes parameters. */
public StatelessHello create() throws RemoteException, CreateException;

}

</td></tr></table>




↑返回目录
前一篇: 循速渐进学用Session Bean(四)
后一篇: 循速渐进学用Session Bean(二)