What is EJB

0.什么是EJB?

答:EJB是用于构建企业应用程序模块托管的、服务器端组件架构。EJB技术加速并简化了开发基于Java技术的分布式、事务性、安全和便携的应用程序。

先看一下EJB在J2EE开发中的详细(EJB处于业务逻辑层):

引用一位大神的话说,EJB就是:"把你编写的软件中那些需要执行制定的任务的类,不放到客户端软件上了,而是给他打成包放到一个服务器上了"。是的,没错!EJB 就是将那些"类"放到一个服务器上,用C/S 形式的软件客户端对服务器上的"类"进行调用。

1.为什么EJB不火了?

答:因为很多人初学Java Web开发时就只听说了Spring,很多培训机构也只教Spring。不少Java开发人员连JavaEE有些什么都弄不清,更别说EJB了。当然,Spring本身没什么不好。它跟JavaEE是相互竞争,互相取长补短的关系。

个人认为主要是EJB依赖于EJB容器才能运行,比如JBoss服务器,完全没有Spring更为方便的管理。

JBoss服务器是一个J2EE的容器,也是一个WEB容器;而现在大部分用的都是servlet容器(一般称为WEB容器),比如tomcat。

3.EJB设计的初衷(让程序员更专注于自己的业务实现)

答:从某种意义上来看,EJB是一种大型分布式企业应用开发架构的先驱尝试者,它试图解决这种企业应用底层那些系统级的问题,系统提供一种可重用的、通用的解决方案。

回顾EJB出现以前的Java应用开发,大部分开发者直接用JSP页面,再加上少量Java Bean就可以完成整个应用,所有的业务逻辑、数据库访问逻辑都直接写在JSP页面中。系统开发前期,开发者不会意识到有什么问题,但随着开发进行到后期,应用越来越大,开发者需要花费大量时间去解决非常常见的系统级问题,反而无暇顾及真正需要解决的业务逻辑问题。

对于EJB来说,它提供了一种良好的组件封装,EJB容器负责处理如事务、访问控制等系统级问题,而EJB开发者则集中精力去实现业务逻辑;对页面开发者而言,EJB的存在无须关心,EJB的实现无须关心,他们只要调用EJB的方法即可。

What is EJB的更多相关文章

  1. NetBean 8 创建EJB

    一. 介绍 百度了一下关于在NetBean开发环境里创建EJB的教程,没有找到好的例子,2天的调试过程,写下来帮助后人. EJB (Enterprise Java Bean) 是一套高扩展性的开发企业 ...

  2. J2EE基础之EJB

    J2EE基础之EJB 1.什么是EJB?       EJB(Enterprise Java Beans),是JavaEE中的商业应用组件技术,是JavaEE三大组件(Servlet,JSP,EJB) ...

  3. 2.一个EJB的小Demo

    新建一个java普通项目即可 这里用到了Jboss,需要安装Jboss,然后进入jboss-4.2.3.GA\client目录,拷贝所有的jar包到本项目的lib下. 3个接口分别如下所示: publ ...

  4. 1.认识EJB

    什么是EJB?1. Enterprice JavaBeans(EJB)是一个用于分布式业务应用的标准服务端组件模型. . 采用EJB架构编写的应用是可伸的.事务性的.多用户安全的. . 采用EJB编写 ...

  5. java.lang.IllegalStateException: Not allowed to create transaction on shared EntityManager - use Spring transactions or EJB CMT instead

    java.lang.IllegalStateException: Not allowed to create transaction on sharedEntityManager - use Spri ...

  6. EJB之Timer

    EJB Timer 要么: Annotation @Schedule 或者方法前声明@Timeout 要么: 在部署描述中定义timeout-method 如果是使用@Schedule, Timer在 ...

  7. EJB的调用

    EJB调用.html :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba(0,0,0,.1);border ...

  8. EJB 简介

    EJB: 被称为java企业bean,服务器端组件,核心应用是部署分布式应用程序.用它部署的系统不限定平台.实际上ejb是一种产品,描述了应用组件要解决的标准 标准:   可扩展 (Scalable) ...

  9. EJB初识(通熟易懂)

    转载自http://blog.csdn.net/jojo52013145/article/details/5783677,讲的很透彻,佩服,膜拜学习 1. 我们不禁要问,什么是"服务集群&q ...

  10. EJB 教程推荐

    EJB教程 EJB概述 EJB创建应用 EJB无状态Bean EJB有状态会话Bean EJB持久性 EJB消息驱动Bean EJB注解 EJB回调 EJB定时器服务 EJB依赖注入 EJB拦截器 E ...

随机推荐

  1. 位于XDB的服务器localhost要求用户名和密码,端口占用

    问题现象: 从MyEclipse启动部署在tomcat上的web程序后,出现如下问题: 然后访问tomcat主页(http://localhost:8080/),弹出如下对话框: 问题原因: 机器上安 ...

  2. 使用Zxing生成一维码和二维码

    首先引用zxing.dll 到项目中引用 using System; using System.Collections.Generic; using System.Drawing; using Sys ...

  3. 部署Cube报错,用户登录失败;280000

    在创建SSAS项目过程中,创建数据源.数据源视图.多维数据集.纬度等一切都没有问题.但是在“进程”这一步的时候,发现总是报错,提示如下. OLE DB 错误: OLE DB 或 ODBC 错误 : 用 ...

  4. JVM:java类的加载机制

    原文连接:https://www.cnblogs.com/ityouknow/p/5603287.html 类加载机制的奥妙. 1.什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读 ...

  5. vue2 数据交互 vue-resource

    1.安装vue-resource到项目中,找到当前项目 输入:npm install vue-resource --save 2.安装完毕后,在main.js中导入,如下所示: import  Vue ...

  6. SpringCloud的学习记录(3)

    这一章节讲搭建config-server的项目. 在我们生成的Demo项目上右键点击New->Module->spring Initializr, 然后next, 填写Group和Arti ...

  7. 用Python爬虫对豆瓣《敦刻尔克》影评进行词云展示

    最近很想看的一个电影,去知乎上看一下评论,刚好在学Python爬虫,就做个小实例. 代码基于第三方修改 原文链接  http://python.jobbole.com/88325/#comment-9 ...

  8. libmysqlclient.so.16未找到方法

    用mysql命令登录的时候报错: [root@iZ www]# mysql -uroot -p mysql: error while loading shared libraries: libmysq ...

  9. count group by 组合用法

    1 需求是 求订单表1个月内 订单累计费用超过500的有多少人 根据题意 最先写出的sql是这样的 SELECT SUM(totalfee)AS n FROM sendorder WHERE `add ...

  10. 源码安装zabbix3.2.7时PHP ldap Warning

    问题如下: 解决方法: 1.首先查看源码安装的php模块中是否有ldap.so [root@nms ldap]# ll  /usr/local/php/lib/php/extensions/no-de ...