EJB基础

来源:互联网 发布:预包装食品网络销售 编辑:程序博客网 时间:2024/05/29 09:37

开发第一个无状态会话bean

*EJB中的三种bean 

1.会话bean(session bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作
2.实体bean 实际上属于java持久化规范(简称JPA)里的技术,JPA的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hibernate、Toplink等ORM框架各自为营的局面。
3.消息驱动bean(message-driven bean) 专门用于异步处理java消息的组件,具有大量并发消息的能力

*会话bean:无状态会话bean(可被多个用户使用和修改)、有状态会话bean(一个bean只供一个用户使用,在一段时间会被缓存)。

*服务端:
*@Stateless 指明ejb是无状态的会话bean
*@Remote(远程接口类) 指定这个接口是远程接口,可以不写,默认实现的是本地接口。
*@Local(本地接口类)*发布的时候一定要把ejb打包成jar文件,直接放在\wildfly-10.1.0.Final\standalone\deployments中就可以了

*客户端:
*通过jndi去寻找远程对象,Properties对象来设置寻找的参数
*当客户端和EJB在同一个JVM(发布在同一个jboss内)运行,则调用本地接口,在内存中进行交互。
*开发具有本地接口的无状态bean:

*网页端的开发
*通常两个接口都实现。通过一个父类来指定两个实现类的处理(多态)
*@Stateful 有状态会话bean
*无状态bean使用实例池技术管理bean
*有状态bean使用激活(activation)管理bean
*在一个EJB中调用另一个EJB:
     1.@EJB(beanName="最短类名或别名") 类 类名
     2.通过原本的方式增加查找。

*配置WILDFLY数据源

*EJB:实际上是用于编写业务层代码。如果大家对于MVC结构的应用有所了解的话,我们知道一个基于MVC结构的应用包含显示层、控制层和业务层、假设我们采用ejb开发基于MVC结构的应用,那么ejb就是用于开发应用的业务层。

0 0
原创粉丝点击