附录一:EJB3基本概念及发展前景
Enterprise JavaBeans是一个用于分布式业务应用的标准服务端组件模型。采用Enterprise JavaBeans架构编写的应用是可伸缩的、事务性的、多用户安全的。采用ejb编写的这些应用,可以部署在任何支持Enterprise JavaBeans规范的服务器平台,如jboss、weblogic等。
EJB实际上是用于编写业务层代码。
EJB为我们提供了很多在企业开发中需要使用到的服务,如事务管理/安全/持久化/分布式等,因为这些服务由容器提供,无需我们自行开发,这样大大减少了我们的开发工作量.
附录二:EJB3.0推荐教程
ejb3.0入门经典,购买地址:http://www.china-pub.com/41146
ejb3.0实例教程, 免费电子版http://www.foshanshop.net
附录三:EJB3的运行环境
EJB3.0应用需要运行在JDK1.5以上版本。
EJB3.0应用需要运行在EJB容器里,下面是一些JavaEE应用服务器,JavaEE应用服务器包含Web容器和EJB容器。注意:Tomcat目前只是Web容器,它不能运行EJB应用。
第一课、EJB3.0_下载安装与运行jboss
a.下载ejb3.0,地址:http://www.jboss.org/jbosses/downloads/
b.解压就是安装,最好别路径包含中文
c.run.bat启动,后台http://localhost:8080/,默认配置server里面的default
d.出错排忧,1)端口是否被占用 2)是否设置JAVA_HOME和ClassPath
3)findstr错误,那你在Path追加%SystemRoot%/system32;%/system32;%SystemRoot;%
e.JBOSS_HOME = jboss的安装路径
第二课、EJB3.0_开发第一个无状态会话bean
a.EJB中的三种Bean
1)会话bean(session bean) -- 业务
2)实体bean(entity bean) -- 持久化
3)消息驱动bean(message-driven bean) -- 消息设置
b.导入相应的jar文件,建议全导入。
c.会话bean又分为无状态会话bean和有状态会话bean -- 无状态会话bean性能高点
d.开发一个无状态bean,简单java项目。
注解符@Stateless @Remote(HelloWorld.class)
e.发布,先将开发项目打包。然后拷贝到server/default/deploy
第三课、EJB3.0_开发EJB的客户端
a.客户端可以是J2SE、J2ME、J2EE
b.本案例采用普通java类
public static void main(String[] args)
{
Properties props = new Properties();
props.setProperty("java.naming.factory", "org.jmp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url","localhost:1099");
try{
InitialContext ctx = new InitialContext(props);
HelloWorld helloWorld = (HelloWorld) ctx.lookup("HelloWorldBean/remote")
System.out.println(helloWorld.sayHello("佛山"));
}catch(NamingException e){
System.out.println(e.getMessage());
}
}
c.JNDI的访问设置,如访问服务器不同,为上下文设置驱动类和URL也是不同的。
props.setProperty("java.naming.factory", "com.sun.enterprise.naming.SerialnitContextFactory");
props.setProperty("java.naming.provider.url","localhost:3700");
d.通过在HelloWorldBean/remote找到bean
HelloWorld helloWorld = (HelloWorld) ctx.lookup("HelloWorldBean/remote")
e.如果把ejb打包成后缀为*.jar的模块文件,默认的全局JNDI名称是
本地接口 EJB-ClASS-NAME/local
远程接口 EJB-ClASS-NAME/remote
例: HelloWorldBean/remote
如果ejb作为后缀*.ear的jaaEE企业应用文件,默认的全局JNDI名称是
本地接口 EAR-FILE-BASE-NAME/EJB-CLASS-NAME/local
远程接口 EAR-FILE-BASE-NAME/EJB-CLASS-NAME/remote
例: HelloWorld/HelloWorldBean/remote
f.环境properties可以通过属性文件设置。起名为jndi.properties文件,
InitialContext ctx = new InitialContext();ejb会自动查找的
属性文件里内容为 ==
java.naming.factory=org.jmp.interfaces.NamingContextFactory
java.naming.provider.url=localhost:1099
g.通过jboss后台查看ejb。.../jmx-console
第四课、EJB3.0_把jboss集成进eclipse
a.关闭jboss,直接按Ctrl+C
b.jboss集成到eclipse中
点击window--》show view --》other --》 server --》 servers
在servers试图下选择 点击右键
new server -- 选择服务器 -- 选择jdk/jboss安装路径 -- 界面基本不改
c.启动点击 绿色按钮 停止 红色按钮
第五课、EJB3.0_通过ANT提高EJB应用的开发效率
a.如果采用以前方法测试ejb的话,需要不断的打包---部署---运行。大大减低企业开发效率。
b.通过ANT提高EJB开发效率,步骤如下:
在项目底下建立一个bulid.xml文件
c.配置文件的属性的解释
(未完)