EJB3基本概念、运行环境、下载安装与运行jboss
EJB3基本概念
什么是EJB:
EJB(EnterpriceJavaBeans)是一个用于分布式业务应用的标准服务端组件模型。采用EJB架构编写的应用是可伸的、事务性的、多用户安全的。采用EJB编写的这些应用,可以部署在任何支持EJB规范的服务器平台,如Jboss、weblogic等。
EJB用来干什么?
EJB实际是用来编写业务层代码。如果大家对于MVC(model-view-controller)结构的应用有所了解的话,我们知道一个基于MVC结构的应用应包含显示层、控制层和业务层,假设我们采用EJB开发基于MVC结构的应用,那么EJB就是用语开发应用的业务层。
EJB的好处:
EJB为我们提供了很多在企业开发中需要使用到的服务,如事务管理/安全/持久化[J1] /分布式等,因为这些服务由容器提供,无需我们自行开发,这样大大减少了我们的开发工作量。
EJB3和Spring比较:
如果你的应用不需要分布式[J2] 能力,确实没有必要使用EJB,因为Spring+Hibernate提供了大部分原来只有EJB才有的服务,而且这些服务比EJB更细致,更周到。
EJB设计的初衷是用于分布式场合,而Spring一开始就没有打算提供分布式功能。所以两者看似竞争的关系,但实际上两者的偏重点不一样,EJB属于重量级[J3] 组件,比较适合大型企业,因为大型企业一般会存在多个信息系统,而这些信息系统又相互关联。为了避免业务功能重复开发,实现最大程度的重用,有必要把业务层独立出来,让多个信息系统共享一个业务中心,这样应用就需要具备分布式能力。
EJB的分布式特点:
好处,为后期的软件维护带来的很大的方便,而且这种应用模式实现了业务功能的共享。
以后如果企业还要增加其他信息系统,又是要使用到相同的业务功能,我们就不需要在去开发这些功能了,直接使用共享的这些业务功能。这样软件就实现了最大程度的重用,而且这种重用是组件级别的,不是层面上的。
学习EJB不一定是用来找工作,EJB3包含很多知识点,学习它可以开阔我们的知识面,不管工作中是否用到EJB3,都应该学习一下,因为通过学习它可以让你站在更高的台阶思考问题。
运行环境
EJB3.0应用需要运行在EJB容器里,下面是一些JavaEE应用服务器,JavaEE应用服务器包含Web容器和EJB容器。
Jboss是 JavaEE应用服务器。
注意:Tomcat目前只是Web容器,它不能运行EJB应用。
下载安装与运行jboss
http://jbossas.jboss.org/downloads这里使用的是jboss-4.2.2.GA,下载后直接解压缩即可完成安装(解压路径最好不要有中文)。点击bib/run.bat启动,进入管理后台进行查看、管理:
提供我下载好的:http://pan.baidu.com/s/1qWnZ55E
双击run.bat 启动的是default配置的。
为Jboss设置系统变量:
后面的学习中我们需要使用到系统变量JBOSS_HOME,它指向的是Jboss的安装路径,在系统变量里面添加JBOSS_HOME变量,值为Jboss的安装路径。
为了方便输入Jboss的命令,我们把Jboss的bin目录添加到系统路径里,在PATH末尾添加;%JBOSS_HOME%/bin;
[J1]持久化是将程序数据在持久状态和瞬时状态间转换的机制。
[J2]分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性、可用性和扩展性。hadoop
[J3]比方说EJB就是一个重量级的框架,因为它对所编写的代码有限制,同时它也提供能分布式等复杂的功能。
相比之下,Spring就是轻量级框架,因为它需要的只是普通的Java对象,它所提供的也只是足够中小应用使用的功能。
复杂性
EJB3基本概念、运行环境、下载安装与运行jboss的更多相关文章
- 服务器运行环境(LNMP)安装说明
服务器运行环境(LNMP)安装说明 因为公司需要一套流程标准,所以写了如下步骤. 先下载文件environment.tar,将文件上传到服务器. 使用命令解压文件,tar xvf environmen ...
- Eclipse下载安装并运行第一个Hello world(详细)
Eclipse下载安装并运行第一个Hello world(详细) 1.下载安装和配置JDK JDK详细的安装教程参考:https://www.cnblogs.com/mxxbc/p/11845150. ...
- Windows7系统下JAVA运行环境下载、安装和设置(第二次更新:2012年03月14日)
1.下载 地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,(由于Sun于2009年被oracle收购所以网址 ...
- Java 运行环境的安装、配置与运行
(一)SDK 的下载与安装 1. 下载SDK 为了建立基于SDK 的Java 运行环境,需要先下载Sun 的免费SDK 软件包.SDK 包含了一整套开发工具,其中包含对编程最有用的是Java 编译器. ...
- 消息中间件系列二:RabbitMQ入门(基本概念、RabbitMQ的安装和运行)
一.基本概念 1. AMQP AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议.支持不同语言和不同的产品 2. 生产者 ...
- (转)Tomcat(java运行环境)安装及配置教程
转自:http://jingyan.baidu.com/article/870c6fc33e62bcb03fe4be90.html 用来进行web开发的工具有很多,Tomcat是其中一个开源的且免费的 ...
- 实验 1 Java 运行环境的安装、配置与运行
一.实验目的 1. 掌握下载 Java SDK 软件包. 2. 掌握设置 Java 程序运行环境的方法. 3. 掌握编写与运行 Java 程序的方法. 4. 了解 Ja ...
- python 下载安装及运行环境配置(windows)
第一步:下载python安装包 下载地址:https://www.python.org/downloads/windows/ 我下载的是版本:3.6.4 安装包下载完成后,点击进行安装. 第二步:配置 ...
- Elasticsearch-6.7.0系列(一)9200端口 .tar.gz版本centos7环境--下载安装运行
https://www.elastic.co/guide/index.html(推荐) ES官方英文原版文档,一般会更新到最新版本 https://www.elastic.co/cn/d ...
随机推荐
- JavaScript数组操作总结
以前特别相信自己的大脑,后来,再也不相信了!大脑是虚无的,重要的东西一定要让它有一个物质的具体的副本.事无巨细! 1.创建数组: new Array(); new Array(size); new A ...
- [ZJOI 2010]count 数字计数
Description 题库链接 问你 \([l,r]\) 区间内所有整数中各个数码出现了多少次. \(1\leq a\leq b\leq 10^{12}\) Solution 数位 \(DP\) . ...
- [HNOI 2011]XOR和路径
Description 给定一个无向连通图,其节点编号为 1 到 N,其边的权值为非负整数.试求出一条从 1 号节点到 N 号节点的路径,使得该路径上经过的边的权值的“XOR 和”最大.该路径可以重复 ...
- ●POJ 1113 Wall
题链: http://poj.org/problem?id=1113 题解: 计算几何,凸包 题意:修一圈围墙把给出的点包围起来,且被包围的点距离围墙的距离不能小于L,求围墙最短为多少. 答案其实就是 ...
- bzoj 3751: [NOIP2014]解方程
Description 已知多项式方程: a0+a1x+a2x^2+...+an*x^n=0 求这个方程在[1,m]内的整数解(n和m均为正整数). 解题报告: 这题比较诡,看到高精度做不了,就要想到 ...
- SpringBoot学习之SpringBoot执行器
在以往的分布式开发当中,各个服务节点的监控必不可少.监控包含有很多方面,比如说:内存占用情况,节点是否健康等.在spring-boot会给我们提供相关资源监控叫做spring-boot-actuato ...
- C++值传递与引用传递
值传递:形参是对实参的拷贝,改变形参的值不会改变外部实参的值,从被调用的角度来说,值传递时单向传递(实参->形参),参数的值只能传入,不能传出. 当函数内部需要修改参数,并且不希望这个改变影响调 ...
- springboot集成redis(mybatis、分布式session)
安装Redis请参考:<CentOS快速安装Redis> 一.springboot集成redis并实现DB与缓存同步 1.添加redis及数据库相关依赖(pom.xml) <depe ...
- Jenkins简明入门(一) -- 安装
如今Jenkins官网的Guide里使用了Docker,网上很多Jenkins入门教程都已过时了,所以写这一篇入门教程. 官网的Guide Link是:https://jenkins.io/doc/p ...
- RxSwift 系列(八) -- Error Handing Operators
前言 本篇文章我们将学习RxSwift中的错误处理,包括: catchErrorJustReturn catchError retry retry(_:) catchErrorJustReturn 遇 ...