java 代码
- package com.test.ejbsmaple;
- import java.rmi.RemoteException;
- import javax.ejb.CreateException;
- import javax.ejb.EJBHome;
- import javax.ejb.EJBMetaData;
- import javax.ejb.Handle;
- import javax.ejb.HomeHandle;
- import javax.ejb.RemoveException;
- public interface EJBHomeSample extends EJBHome{
- public EJBSampleRemote create() throws RemoteException,CreateException;
- }
java 代码
- package com.test.ejbsmaple;
- import java.rmi.RemoteException;
- import javax.ejb.EJBException;
- import javax.ejb.SessionBean;
- import javax.ejb.SessionContext;
- public class EJBSample implements SessionBean{
- private SessionContext sCont = null;
- //TODO:和ejbPassivate正好相反,它将被挂起的Bean从新调回。
- public void ejbActivate() throws EJBException, RemoteException {
- // TODO Auto-generated method stub
- }
- //TODO:初始化的Enterprise Bean 过多,EJB容器将其中的一些挂起(passivate),
- //TODO:释放他们所占用的空间
- public void ejbPassivate() throws EJBException, RemoteException {
- // TODO Auto-generated method stub
- }
- //TODO:可以清除EJB容器中的Bean
- public void ejbRemove() throws EJBException, RemoteException {
- // TODO Auto-generated method stub
- }
- //TODO:EJB容器和Enterprise Bean互相作用的关口。
- public void setSessionContext(SessionContext sessCon) throws EJBException, RemoteException {
- // TODO Auto-generated method stub
- this.sCont = sessCon;
- }
- }
java 代码
- package com.test.ejbsmaple;
- import java.rmi.RemoteException;
- import java.util.Properties;
- import javax.ejb.CreateException;
- import javax.naming.Context;
- import javax.naming.InitialContext;
- import javax.naming.NamingException;
- import javax.rmi.PortableRemoteObject;
- public class EJBSampleClient {
- private EJBHomeSample ejbHome = null;
- public EJBSampleClient() {
- try {
- Context text = getInitialContext();
- Object ejbSample = text.lookup("EJBSample");
- ejbHome = (EJBHomeSample) PortableRemoteObject.narrow(ejbSample, EJBHomeSample.class);
- } catch (NamingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- public EJBHomeSample getHome() {
- return ejbHome;
- }
- private static InitialContext getInitialContext() throws NamingException{
- String url = "t3://127.0.0.1:4848";
- Properties properties = null;
- properties = new Properties();
- properties.put(InitialContext.INITIAL_CONTEXT_FACTORY, "javax.naming.spi.InitialContextFactory");
- properties.put(InitialContext.PROVIDER_URL, url);
- return new InitialContext(properties);
- }
- public static void main(String[] args) {
- EJBSampleClient client = new EJBSampleClient();
- try {
- EJBSampleRemote remote = client.getHome().create();
- String s = remote.showName();
- System.out.println(s);
- } catch (RemoteException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (CreateException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
java 代码
- package com.test.ejbsmaple;
- import java.rmi.RemoteException;
- import javax.ejb.EJBObject;
- public interface EJBSampleRemote extends EJBObject {
- public java.lang.String showName() throws RemoteException ;
- }