这么多天以来,一直都在找软件,找方案,到底要怎样做J2EE项目呢
Eclipse,Jboss,Mysql这些是免费的吗,没花钱的东西就是不放心。
我喜欢正版,不喜欢因为是免费的所以不负任何责任的。。
总之是下了,能不能用就不再想了,也许凭着咱的功夫能过关吧,
EJB3
1、定义JAVA语言元数据注释,免ejb-jar.xml文件,从EJB的类中直接获得并自动生成接口。
2、JNDI服务和简化查找机制。
3、简化EJB类型,使用简单POJO和JavaBean。
4、会话Bean和实体Bean不再需要EJB组件接口(EJBObject,EJBLocalObject,Remote interface)。会话Bean的业务接口是一个普通的Java接口,实体Bean不再需要任何接口。
5、EJB对象不再需要Home接口。
6、CMP类型的实体Bean被简化。
7、通过注释来实现实体Bean的对象/关系映射。
9、加强了EQL。
10、不需要Exception的检查。
11、客户通过JNDI 可获取取ejb对象,实体bean可以new()。
Eclips3.1.2+MyEcliips4.1+JBoss(jboss-ejb-3.0_Preview..+JbossIDE)
1.设Jboss_home path:....
2.jboss-ejb-3.0_Preview中的ejb3.deployer、ejb3-interceptors-aop.xml复制到jboss-4.0.1/server/all/deploy的位置。
3.eclips中classpath加ejb3.deployer中的所有jar,
jboss4.0.1/server/all/deploy/jboss-aop.deployer下的jboss-aop.jar、jboss-aspect-library.jar,j
boss4.0.1/server/all/conf下的jndi.properties复制到src目录中,
ejb3.deployer/meta-inf中的hibernate.properties复制到工作区目录下,用于构建实体Bean。
EJB类
package ppp;
import javax.ejb.xx
@Stateless
@Stateful
@MessageDriven
@Entity
public class xxBean implements xxRemote,xxLocal
{
有实现的方法
}
下面一个业务接口(可以省),一个远程会话Bean,一个实现类
package ppp;
public interface Teller
{
public String tell();
}
package ppp;
import javax.ejb.Remote;
@Remote
public interface TellerRemote extends Teller
{}
package ppp;
import javax.ejb.Stateless;
@Stateless
public class TellerBean implements TellerRemote//必须要实现接口否则报错,此处实现的接口可以为Remote或Local,如果不是而是普通接口它将成为本地EJB
{
public String tell()
{
String words="hello word";
System.out.println(words);
return words;
}
}
客户端:
package ppp;
import javax.naming.InitialContext;
public class test
{
public static void main(String [] args)
{
InitialContext ctx=new InitialContext();
Teller te=(Teller) ctx.lookup(TellerRemote.class.getname());
System.out.println(te.tell());
}
}