我以前用过EJB3.0开发过两个项目,除了它依赖于服务器容器的重量级外,我并没有看到它所谓的侵入性,所以当看到资料说EJB是侵入性的时候,会感到难以理解,因为使用EJB3的时候甚至感觉它比Spring还要好用。
但想不到2011年的今天,我竟然还能使用ejb2.0开发项目,虽则痛苦,其实也算是一种幸运吧。
至少让我体会到了遭到口诛笔伐的EJB2的侵入性,同时越是使用老的技术,才有更接近于原理之感,现贴上一个小例子,是自己写的ejb2的helloworld,只因网上并无实质资料,所以虽则简单,犹以能助后来者。
1,在ejb工程下,新建一個sessionbean:HelloBean,
package com.zjx;
/**
* Bean implementation class for Enterprise Bean: Hello
*/
public class HelloBean implements javax.ejb.SessionBean {
static final long serialVersionUID = 3206093459760846163L;
private javax.ejb.SessionContext mySessionCtx;
/**
* getSessionContext
*/
public javax.ejb.SessionContext getSessionContext() {
return mySessionCtx;
}
/**
* setSessionContext
*/
public void setSessionContext(javax.ejb.SessionContext ctx) {
mySessionCtx = ctx;
}
/**
* ejbCreate
*/
public void ejbCreate() throws javax.ejb.CreateException {
}
/**
* ejbActivate
*/
public void ejbActivate() {
}
/**
* ejbPassivate
*/
public void ejbPassivate() {
}
/**
* ejbRemove
*/
public void ejbRemove() {
}
public void sayHello() {
System.out.println("Hello World!");
}
}
2,会在client中生成一个Hello接口,在其中添加一个sayHello() 方法。
3,发布EAR文件,会自动生成多个java文件,且不必管。
4,配置文件信息:
<display-name>
testEJB</display-name>
<enterprise-beans>
<session id="Hello">
<ejb-name>Hello</ejb-name>
<home>com.zjx.HelloHome</home>
<remote>com.zjx.Hello</remote>
<ejb-class>com.zjx.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
<ejb-client-jar>testEJBClient.jar</ejb-client-jar>
5,新建测试工程,类如下:
public static void main(String[] args) throws NamingException,
RemoteException {
String JNDIName = "ejb/com/zjx/HelloHome";
InitialContext initContext = new InitialContext();
Object obj = initContext.lookup(JNDIName);
HelloHome home = (HelloHome) javax.rmi.PortableRemoteObject.narrow(obj,
HelloHome.class);
try {
Hello hello = home.create();
hello.sayHello();
} catch (CreateException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
测试成功,不过需要注意的是main方法只能测试remote,如果要测local宜用web。
分享到:
相关推荐
### WebSphere 7.0.0.0 部署手册关键知识点解析 #### 一、概述 IBM WebSphere Application Server 7.0 (简称 WebSphere 7.0) 是一款功能强大的应用服务器,用于部署Java EE应用程序。该版本提供了许多新特性与改进...
相比之下,WebService则面向更广泛的场景,包括企业间的数据交换、异构系统整合等,它支持语言无关、消息驱动的交互方式,具有良好的跨平台性和松散耦合性,尽管在效率上可能略逊一筹,但在灵活性和可扩展性方面具有...
- Java Servlet API:WebSphere Application Server自带JSDK 2.0或更高版本 - Web浏览器:Netscape Navigator 4.06/4.0.7、Microsoft Internet Explorer 4.01及以上版本、Sun HotJava 1.1及以上版本 #### 三、安装...
以上只是WebSphere配置文档中的一部分内容,实际配置过程中还包括许多其他方面,如JMS、EJB、缓存、Web服务、国际化和本地化等。WebSphere的强大之处在于其灵活性和可定制性,但这也意味着需要深入理解其配置选项和...
3. **WebSphere Application Server**: WebSphere Application Server是IBM提供的一个企业级应用服务器,它支持多种Java EE标准,包括Servlet、JSP、EJB等。在开发网站时,WebSphere提供了一个稳定的运行环境,可以...
在这个主题下,我们将深入探讨WebSphere 7和5.1的主要特性和配置步骤。 WebSphere 5.1,也称为WAS V5.1,是较早的版本,发布于2003年,支持J2EE 1.4规范。这个版本包含了基本的Java EE功能,如EJB、JSP和Servlet等...
9. **修改ejb配置**:对于`ibm-ejb-jar-bnd.xmi`文件,需要更新`<ejbBindings>`元素下的`jndiName`属性,以匹配JBOSS中的`jndi-name`。 10. **处理Local EJB引用**:在`web.xml`和`ibm-web-bnd.xmi`中添加相应的`...
- `webshpere安装.doc`应详细描述了安装步骤,包括系统需求、安装选项、配置检查等。 - 文件可能会涵盖如何验证安装成功,以及启动和停止服务器的基本命令。 4. **概要文件创建**: - `概要文件创建.doc`将指导...
### Web环境下的消息传递利用 WebSphere MQ Java接口为开发者提供了一种高效且灵活的方式来进行消息传递,尤其是在复杂的分布式环境中。该文档重点介绍了在Web环境中利用消息传递的一些关键优势。 #### 缓慢连结的...
- LENGTH:获取字符串长度,如`LENGTH('Hello world')`返回11。 - POSITION:查找子串在字符串中的位置,如`POSITION('A' IN 'ABC')`返回1。 - LEFT/RIGHT:提取字符串的左侧或右侧子串,如`LEFT('ABCD', 2)`返回...
1. **启动发送方通道**:在机器A和B上分别启动它们的发送方通道,正常情况下通道状态应该显示为“正在运行”。 2. **编写并运行测试程序**:使用提供的Java测试程序`MQTest.java`来验证消息传递。该程序在机器A上...
- **解压并替换文件**:将下载的 ZIP 包解压缩,并将其中的所有文件替换到 `\IBM\WebSphere\AppServer` 目录下。 - **运行升级工具**:启动 WAS 控制台或使用命令行工具来执行升级操作,确保所有组件都已正确更新。 ...
1. **安装DB2驱动**:将`db2jcc4.jar`和其他必要的DB2 JAR文件复制到WebSphere的`lib`目录下,或者将其添加到应用的`WEB-INF/lib`目录中,这样它们会被自动包含在类路径中。 2. **配置数据源**:在WebSphere管理员...
【WebSphere MQ 7 教程】 WebSphere MQ(简称WMQ)是IBM提供的一款企业级消息中间件,它在分布式系统中起到了关键的角色,负责可靠地传递数据和消息。在WebSphere MQ 7版本中,它提供了更高级别的安全性和性能优化...
2. **JCL Option 3 + WAR**:对于Web应用程序(WAR文件),可以在WAR文件内部的`WEB-INF/lib`目录下包含JCL JAR文件,从而仅影响该WAR文件。 3. **JCL Option 2 + 应用关联共享库**:这种方法涉及创建一个与特定应用...
- 在 Websphere Application Server 下找到 Download 部分。 - 在 Recommended fixes 分类中选择适用于 WebSphere 6.1 的更新包。 #### 三、WebSphere 6.1 更新包详情 根据提供的部分内容,本次升级涉及以下更新...
对websphere的垃圾回收日志进行分析,知道内存的使用情况。
学习如何在WAS上部署Java EE应用,包括WAR、EAR和EJB等形式的应用。理解部署描述符文件(如web.xml、application.xml)的配置,以及部署策略和更新机制。 4. **集群与高可用性** 高可用性是企业级服务的关键特性...
这是一个非常专业,而且有针对性的视频教程,是一线经验丰富的教师的录频教程