EJB轻松进阶(3)

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

EJB轻松进阶(3)

第三步 编写EJB代码

由前述的目录结构可知,EJB代码包括三个Java文件。

1、Security.java是一个接口,它定义了基本的加密、解密调用接口。注重,由于Security接口可生成EJB对象,所以它必须继续自EJBObject接口。其源代码如下:

文件“Security.java”

package securitybeans;

import java.rmi.RemoteException;

import javax.ejb.EJBObject;

public interface Security extends EJBObject

{

public String encrypt( String strSource ) throws RemoteException;

public String decrypt( String strTarget ) throws RemoteException;

}/* Security */

2、SecurityHome接口可生成EJBHome对象,它负责直接与客户打交道,接收客户的请求,返回处理结果。在EJB规范中,SecurityHome必须继续自EJBHome接口。其源代码如下:

文件“SecurityHome.java”

package securitybeans;

import java.rmi.RemoteException;

import javax.ejb.EJBHome;

import javax.ejb.CreateException;

public interface SecurityHome extends EJBHome

{

Security create() throws CreateException, RemoteException;

}/* EJBHome */

3、SecurityBean类才是真正做“正事”的类,它负责对SecurityHome对象传来的字符串执行加密、解密算法,将得到的结果返回给SecurityHome对象。它是一个Stateless SessionBean,按照EJB规范,必须实现SessionBean接口。其源代码如下:

文件“ScurityBean.java”

package securitybeans;

import java.rmi.RemoteException;

import javax.ejb.SessionBean;

import javax.ejb.SessionContext;

public class SecurityBean implements SessionBean

{

public String encrypt( String strSource )

{

String strTarget = "";

for ( int i = strSource.length() - 1; i >= 0; i -- )

{

strTarget += strSource.charAt( i );

}//for

return strTarget;

}//encrypt()

public String decrypt( String strTarget )

{

String strSource = "";

for ( int i = strTarget.length() - 1; i >= 0; i -- )

{

strSource += strTarget.charAt( i );

}//for

return strSource;

}//decrypt()

public void ejbActivate() {}//ejbActivate()

public void ejbRemove() {}//ejbRemove()

public void ejbPassivate() {}//ejbPassivate()

public void setSessionContext( SessionContext sc ) {}//setSessionContext()

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航