
EJB
文章平均质量分 58
疯狂的建波
喜欢编程,喜欢J2EE
展开
-
EJB基础一 无状态会话BEAN使用
EJB基础一 无状态会话BEAN使用EJB是J2EE的一条标准。以往EJB被人诟病,缺点是复杂,沉重。然后spring崛起了,spring因其轻量级,开发方便而得到了迅速地推广。但是这是过去了,EJB 2.X确实存在这个特点。但新标准的EJB 3.X却在向轻量级转变,而且开发效率可以说完全与spring相当。要进行EJB开发,必须有EJB容器,tomcat是默认没有实现EJB的。实现了EJ原创 2016-01-16 11:57:28 · 1678 阅读 · 0 评论 -
EJB基础二 异步调用
EJB的异步相当简单。其实就是在方法上加个@Asynchronous注解就够了。异步方法有两种返回类型,一是void,一是Future,我个人建议还是返回void。因为返回Future还需要等待结果,就是同步了,所以没有了异步意义。就比如下面的代码,就是一个典型的带异步调用的无状态EJB。因为返回的是void,所以可以不处理返回值。package asyncejb; import ja原创 2016-01-18 10:22:26 · 51461 阅读 · 0 评论 -
EJB基础三 有状态EJB
有状态EJB其实是类似于CDI中的依赖作用域。就是你需要一个有状态EJB的时候,就会新建一个有状态EJB。因为根据需求创建的,所以每个请求都有一个,这样才可以保存状态,故成为有状态EJB。无状态EJB在wildfly中默认最大20个,假如有100个请求,那么这20个无状态EJB只能被共享。共享了又怎么能保存客户端的状态呢?购物车就是个明显的有状态EJB,将购物车它放到session里,这样保证原创 2016-01-24 17:02:01 · 50186 阅读 · 0 评论 -
EJB定时器
EJB的定时器使用 EJB定时需要在一个EJB(可以是单例或无状态EJB)内,写一个public方法,返回值为void,参数为空。加上javax.ejb.Schedule注解就行了。 EJB定时器,我们常用的就是三个属性,时分秒。 这三个值默认值都是0。年月日默认值是*。 *的意思是每次都执行,0的意思是值为0时才执行。 如果说我们在注解中什么都不加,那么这个方法会在每天凌晨0点0分0秒时原创 2017-06-09 11:15:51 · 730 阅读 · 0 评论 -
远程EJB使用
urn:jboss:domain:remotingSocket端口配置ejb-security-realm远程调用EJB总共以下几个步骤第一步 写服务器端service第二步 配置用户第三步 配置端口第四步 配置EJB第五步 配置客户端第六步 写客户端第一步 写服务器端代码远程EJB一定要写接口,学过EJB的都知道本地EJB是可以无接口的。这里为了简原创 2016-01-07 16:39:50 · 950 阅读 · 1 评论 -
EJB简单消息驱动Bean
消息驱动BEAN消息驱动BEAN类似于无状态会话BEAN,在wildfly服务器中扮演一个角色MessageListener类实现onMessage方法。我们看看API中的源代码package javax.jms;/** * @version $Rev: 467553 $ $Date: 2006-10-25 06:01:51 +0200 (Wed, 25 Oct 2006)原创 2016-01-07 16:36:09 · 678 阅读 · 0 评论 -
EJB两种不同注解风格的JNDI问题
EJB项目中一般使用JNDI来查找EJB。那么JNDI名字就成了关键。EJB有两种注解方式。第一种注解方式 @LoalBean+@Local,也就是接口加上@Local,实现类加@LocalBean注解生成的JNDI名字如下:java:global/prepay-web/Class!FullClassjava:app/prepay-web/Class!FullClassja原创 2016-01-07 16:29:18 · 744 阅读 · 0 评论 -
EJB客户端访问
EJB客户端访问 因为EJB是一个重量级的框架,拿常用的会话EJB来说,本地EJB还不如J2EE的CDI,所以只有远程EJB才是EJB的核心内容。远程EJB的访问协议有很多种,有HTTP协议、HTTPS协议、netty等等。 要写一个完整的EJB客户端,项目中必须有这么几个东西: 1 EJB客户端调用库 2远程EJB的客户端接口 3 配置 4 访问代码(这个有点画蛇添足,哈哈) 一 首原创 2017-06-15 09:26:58 · 543 阅读 · 0 评论