What is EJB
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的更多相关文章
- NetBean 8 创建EJB
一. 介绍 百度了一下关于在NetBean开发环境里创建EJB的教程,没有找到好的例子,2天的调试过程,写下来帮助后人. EJB (Enterprise Java Bean) 是一套高扩展性的开发企业 ...
- J2EE基础之EJB
J2EE基础之EJB 1.什么是EJB? EJB(Enterprise Java Beans),是JavaEE中的商业应用组件技术,是JavaEE三大组件(Servlet,JSP,EJB) ...
- 2.一个EJB的小Demo
新建一个java普通项目即可 这里用到了Jboss,需要安装Jboss,然后进入jboss-4.2.3.GA\client目录,拷贝所有的jar包到本项目的lib下. 3个接口分别如下所示: publ ...
- 1.认识EJB
什么是EJB?1. Enterprice JavaBeans(EJB)是一个用于分布式业务应用的标准服务端组件模型. . 采用EJB架构编写的应用是可伸的.事务性的.多用户安全的. . 采用EJB编写 ...
- 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 ...
- EJB之Timer
EJB Timer 要么: Annotation @Schedule 或者方法前声明@Timeout 要么: 在部署描述中定义timeout-method 如果是使用@Schedule, Timer在 ...
- EJB的调用
EJB调用.html :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba(0,0,0,.1);border ...
- EJB 简介
EJB: 被称为java企业bean,服务器端组件,核心应用是部署分布式应用程序.用它部署的系统不限定平台.实际上ejb是一种产品,描述了应用组件要解决的标准 标准: 可扩展 (Scalable) ...
- EJB初识(通熟易懂)
转载自http://blog.csdn.net/jojo52013145/article/details/5783677,讲的很透彻,佩服,膜拜学习 1. 我们不禁要问,什么是"服务集群&q ...
- EJB 教程推荐
EJB教程 EJB概述 EJB创建应用 EJB无状态Bean EJB有状态会话Bean EJB持久性 EJB消息驱动Bean EJB注解 EJB回调 EJB定时器服务 EJB依赖注入 EJB拦截器 E ...
随机推荐
- (七)使用jedis连接单机和集群(一步一个坑踩出来的辛酸泪)
环境准备: redis-4.0.9,最新版了 ruby:redis-x.x.x.gem 这个gem什么版本都行,我redis4用3.0.0的gem正常跑 jedis-2.9.0.jar,最新版 ...
- Qt 学习(4)
Qt UI 文件机制 使用 Qt 设计界面程序时,若界面是静态的,可以借助 Qt Designer 进行所见即所得的界面设计.设计好界面后,在界面类中对 ui 对象进行操作非常方便. QtCreato ...
- POJ 1861 ——Network——————【最小瓶颈生成树】
Network Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 15268 Accepted: 5987 Specia ...
- C#使用MediaInfo查看媒体信息
1.将MediaInfo.dll放入可执行目录. 2.将官网Demo里的MediaInfoDLL.cs放入项目中.(http://mediainfo.sourceforge.net/en/Downlo ...
- Redis-Service.Stack的初级使用
主要解决Redis服务器带有密码的情况下初始化. 创建RedisHelper类,直接贴代码: using ServiceStack.Redis;using System;class RedisHelp ...
- java使用jdbc连接数据库步骤
确定连接的数据库类型<mysql,oracle,db2,moangdb,sqlservlet> 下载数据库的驱动(http://mvnrepository.org),并把jar包添加到项目 ...
- jquery常用属性与方法
1..css( )给指定的样式设置样式值: 2..attr(attributeName,value) /.removeAttr(attributeName);给指定的属性设置值 / 清除所有匹配的元素 ...
- array_map()关于回调函数的总结
array_map()函数的第一个参数可以是匿名函数,系统函数,也可以是自己自定义的函!在全局空间下,这些函数的调用都很简单 在这里就不多说了!我们主要讨论的是该函数调用类中的方法和静态方法的区别 摘 ...
- The seventeenth day
A good book is a good friend 好书如挚友
- 升级jdk注意事项
最好使用和编译的jdk相同版本的jre去执行.class程序. 今天在本地模拟部署项目到tomcat6就遇到了个坑. 我们项目使用的jdk1.7开发的,编译打war包放到webapps后,启动报错Ex ...