在ejb-jar.xml文件里可以看元素<session-type>中的属性,Stateless是无状态的,Stateful是有状态的。
如果你是用JBuilder开发的话,这个文件是自动生成的,现在一般都是这么用。
要想看到也不难,在EJB Designer中,创建EJB的时候可以选择。有态和无态的区别不在性能上,在功能上。有态的带参数,即属性;无态的则不能带。
如果你是用JBuilder开发的话,这个文件是自动生成的,现在一般都是这么用。
要想看到也不难,在EJB Designer中,创建EJB的时候可以选择。有态和无态的区别不在性能上,在功能上。有态的带参数,即属性;无态的则不能带。
解决方案 »
- NoClassDefFoundError: org/springframework/beans/factory/xml/NamespaceHandlerSupp
- 谈论下学习技术知识的学习模型
- Struts问题
- JAVA MAIL 的问题求教
- ***********给各位 ** 斑竹 ** 的问题,请 斑竹 们进来看看!!!
- 启动weblogic时出现如下提示。启动不来了,请进来看下
- JBuilder
- 请问在JB7中如何使用DateBase Pilot连接并管理MySQL????
- 如家 汉庭 某酒店2000W数据 1.7 GB 泄露数据如何快速查询
- Hibernate中怎么将多个查询的条件设置在创建的集合list中、急求高手!
- 请问如何在oracle中部署ejb?
- 能否提供一个struts简单数据库操作的例子,struts in action的例子和英文看的太累了 不明白
还有一种方法就是上面这为老兄直接修改
2.要是想在动态下知道是哪种bean的话,就需要自己编写代码了,如下是判断一个bean
是无状态/状态/entity Bean:
import javax.ejb.*;
import simpleBean.*;import javax.naming.InitialContext;
import java.lang.reflect.*;class SalaryInspector{
public static void main(String[] args){
try{
InitialContext ctx = new InitialContext();
Object objRef = ctx.lookup("Salary");
SalaryHome home = (SalaryHome)javax.rmi.PortableRemoteObject.narrow(
objRef, SalaryHome.class);
EJBMetaData date = home.getEJBMetaData(); String beanType = "";
if(date.isSession){
if (date.isStatelessSession()){
beanType = "Stateless Session Bean";
}else{
beanType = "Stateful Session Bean";
}else{
beanType = "Entity Bean";
}
System.out.println("Beantype: " + beanType);
}catch(javax.naming.NamingException ne){
}catch(java.rmi.RemoteException re){
}
}
}
请问你这里的
EJBMetaData date = home.getEJBMetaData();是EJB里面的一个方法吗?
是不是一根据调用EJB中的某个方法来判断EJB的类型啊?
import simpleBean.*;
从那里来的啊?
要在JB中设置的吗?