`
choelea
  • 浏览: 75243 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

EJB2.0 笔记

    博客分类:
  • J2EE
阅读更多

SessionBean的学习:

用于测试EJB的client代码:

package cn.choelea.ejb;

import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;

public class HelloClient {
	public HelloClient() {}
	public static void main(String[] args) throws Exception {
		Properties properties = new Properties();
		properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
		properties.put(Context.PROVIDER_URL, "t3://127.0.0.1:7001");
		Context ctx=new InitialContext(properties );
		Object obj = ctx.lookup("HelloWorldEJB");
		HelloWorldHome home = (HelloWorldHome) javax.rmi.PortableRemoteObject.narrow(obj,
				HelloWorldHome.class);
		HelloWorld hello = home.create();
		System.out.println(hello.helloWorld());
	}
}

 客户端可以是个简单的java application. classpath 中要有服务器端打包的EJB的jar文件(或者只导入两个接口类即可)和weblogic.jar

 

Weblogic Server端EJB

HelloWorld 远程接口:

package cn.choelea.ejb;
import java.rmi.RemoteException;

import javax.ejb.EJBObject;


public interface HelloWorld extends EJBObject{
	public String helloWorld() throws RemoteException;
}

 

Home 接口:

package cn.choelea.ejb;

import java.rmi.RemoteException;

import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface HelloWorldHome extends EJBHome{
	public HelloWorld create() throws CreateException,RemoteException;
}

 

EJB 类:

package cn.choelea.ejb;

import java.rmi.RemoteException;

import javax.ejb.EJBException;
import javax.ejb.EJBHome;
import javax.ejb.EJBObject;
import javax.ejb.Handle;
import javax.ejb.RemoveException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;

public class HelloWorldBean implements SessionBean,HelloWorld{
	private SessionContext ctx;
	public EJBHome getEJBHome() throws RemoteException {
		// TODO Auto-generated method stub
		return null;
	}
	public void ejbCreate(){}
	public Handle getHandle() throws RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public Object getPrimaryKey() throws RemoteException {
		// TODO Auto-generated method stub
		return null;
	}

	public boolean isIdentical(EJBObject arg0) throws RemoteException {
		// TODO Auto-generated method stub
		return false;
	}

	public void remove() throws RemoteException, RemoveException {
		// TODO Auto-generated method stub
		
	}

	public void ejbActivate() throws EJBException, RemoteException {
		// TODO Auto-generated method stub
		
	}

	public void ejbPassivate() throws EJBException, RemoteException {
		// TODO Auto-generated method stub
		
	}

	public void ejbRemove() throws EJBException, RemoteException {
		// TODO Auto-generated method stub
		
	}

	public void setSessionContext(SessionContext arg0) throws EJBException,
			RemoteException {
		ctx = arg0;		
	}

	public String helloWorld() throws RemoteException {
		return "Hello World. Welcome to EJB!";
	}

}

 

EJB部署文件:(ejb-jar.xml)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar id="ejb-jar_ID">
	<enterprise-beans>
		<session>
			<ejb-name>HelloWorld</ejb-name>
			<home>cn.choelea.ejb.HelloWorldHome</home>
			<remote>cn.choelea.ejb.HelloWorld</remote>
			<ejb-class>cn.choelea.ejb.HelloWorldBean</ejb-class>
			<session-type>Stateless</session-type>
			<transaction-type>Bean</transaction-type>
		</session>
	</enterprise-beans>
</ejb-jar>

 

weblogic-ejb-jar.xml 描述文件

<?xml version="1.0"?>

<!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN" "http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd">

<!-- Sample MessageDriven bean Weblogic deployment descriptor -->

<weblogic-ejb-jar>
	<weblogic-enterprise-bean>
		<ejb-name>HelloWorld</ejb-name>
		<jndi-name>HelloWorldEJB</jndi-name>
	</weblogic-enterprise-bean>
</weblogic-ejb-jar>

 

 

分享到:
评论

相关推荐

    java EJB笔记

    【Java EJB笔记】 Java EJB (Enterprise JavaBeans) 是Java平台上用于构建企业级应用程序的组件模型,自1999年随着J2EE规范一起推出。EJB为Java开发者提供了一种规范化的数据访问和持久化标准,旨在简化企业级开发...

    ejb 学习笔记4

    不同于实体Bean(EntityBean)这种EJB2.0/2.1时期的持久化组件,现代的实体更侧重于轻量级和灵活性,旨在通过JPA(Java Persistence API)提供数据持久化的功能。实体的主要作用在于实现对象的持久化,即保存和加载...

    spring第一天课堂笔记

    - **2001年** 发布了EJB 2.0版本。 - **2003年** EJB 2.1版本发布。 - **2006年** EJB 3.0版本发布。 在这个过程中,Spring框架创始人Rod Johnson通过他的著作《Expert One-to-One J2EE Design and Development》...

    Java/JavaEE 学习笔记

    EJB2.0.....315 第一章 EJB介绍 .315 第二章 First EJB....318 第三章 EJB原理.320 第四章 Session Bean(会话Bean).....322 第五章 消息驱动Bean(MDB).........327 EJB3.0.....329 第一章 EJB3.0 Foundation...........

    J2EE学习笔记(J2ee初学者必备手册)

    EJB2.0.....315 第一章 EJB介绍 .315 JavaEE@xuxiang 5 Java/JavaEE学习笔记Jonny xuxiang5612@sina.com 第二章 First EJB....318 第三章 EJB原理.320 第四章 Session Bean(会话Bean).....322 第五章 消息驱动Bean...

    Spring1笔记

    - **2001年**:EJB 2.0 规范发布。 - **2003年**:EJB 2.1 规范发布。 - **2006年**:EJB 3.0 规范发布,引入了许多简化开发的新特性。 - **Rod Johnson**:Spring 框架的创始人,在2002年出版了《Expert One-to-One...

    java 笔记 JDBC

    3. **MessageDriven Beans (MDB)**:EJB 2.0引入,主要用于处理JMS消息。MDB异步工作,接收并处理JMS消息,适合处理不需要立即响应的业务请求,如订单处理。 --- **垃圾收集(GC)** Java的垃圾收集机制负责自动...

    Spring学习笔记之一“why spring”

    Spring框架的诞生,主要是为了解决传统Java EE开发中的痛点,如EJB(Enterprise JavaBeans)的复杂性、过度的JDBC编码以及对单体架构的依赖。Spring通过提供轻量级容器,使得开发者能够更专注于业务逻辑,而非基础...

    JBPM4学习笔记(全)

    2. **流程建模**:学习使用BPMN(Business Process Modeling Notation)2.0标准进行流程设计,理解各种流程元素,如开始事件、结束事件、任务、网关、事件和数据对象等。通过学习,你将能使用jbpm designer工具创建...

    JAVA私塾全套笔记

    #### Ibatis2.0 - **SQL映射** - 提供了将SQL语句与Java代码分离的机制。 #### 数据库 - **SQL** - Structured Query Language,用于管理关系数据库。 #### 软件工程 - **软件开发生命周期** - 从需求分析到...

    JBPM4学习笔记.doc

    JBPM4支持BPMN(Business Process Modeling Notation)2.0标准,这是一种图形化的流程建模语言,使得非技术人员也能理解流程逻辑。BPMN包含各种图形元素,如开始事件、结束事件、用户任务、服务任务、网关等,它们...

    清晰的技术资料学习笔记

    8. **EJB3.pdf**:EJB(Enterprise JavaBeans)是Java EE中的企业级组件模型,版本3引入了许多简化开发的特性。这份文档可能详细讲解了EJB 3的核心概念,如实体Bean、会话Bean、消息驱动Bean以及依赖注入。 9. **...

    java私塾全部笔记

    ### Java私塾全部笔记知识点概览 #### 一、JAVA基础 ##### 第一章 Java入门 - **Java是什么** - Java是一种广泛使用的面向对象的编程语言。 - Java不仅是一门语言,还是一种软件开发平台,支持跨平台运行。 - ...

    【读书笔记】Java参考大全-J2EE5版本

    JSF2.0在J2EE5中引入,进一步增强了其功能,如Facelets视图技术、复合组件支持和AJAX集成。 5. **持久化API (JPA)**:JPA是Java Persistence API,它是J2EE5的一部分,提供了一种标准的方式来管理和持久化Java对象...

    SSH(Struts+spring+hibernate)整合资料

    jsp2.0(1) Spring(1) C#游戏编程(附几个游戏的源代码)(1) 使用ADO.NET和XML开发数据库应用程序(1) EJB-CMP_CMR(1) JSP(1) c#连接数据库完整代码(1) Hibernate(1) 语言规范(1) 2.0(1) Struts(1) 绝对值得下载的资料...

    JavaEE5学习笔记01-JTA和数据库事务

    ### JavaEE5学习笔记01-JTA和数据库事务:深入解析与应用 #### 一、JavaEE5概览与核心组件 JavaEE5是Java Enterprise Edition的第五个版本,标志着企业级Java应用的一个重要里程碑。它引入了一系列重要的新特性,...

Global site tag (gtag.js) - Google Analytics