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 ...
随机推荐
- Shell自学二(参数传递和数组)
8.传递参数 1.使用$n来传递参数($0表示文件名) 例子: echo "执行的文件名:$0"; echo "第一个参数为:$1"; ...
- 用DotTrace 来分析.NET-Core程序
1. 前言 看园子里面讲dotTrace 的文章不多,最近也有这方面的需要,于是去搜索了一下,.NET 性能分析方面的工具.目的呢,主要是想发现我的代码中,哪些代码占用了最多时间,来进行优化.主要 ...
- BZOJ3129: [Sdoi2013]方程
拓展Lucas+容斥原理 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cs ...
- Python3 运算符
装载自:https://www.cnblogs.com/cisum/p/8064222.html Python3 运算符 什么是运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 ...
- face-alignment:用 pytorch 实现的 2D 和 3D 人脸对齐库
使用世界上最准确的面对齐网络从 Python 检测面部地标,能够在2D和3D坐标中检测点. 项目地址:https://github.com/1adrianb/face-alignment 作者: 阿德 ...
- Spring MVC运行流程
一.配置阶段 ①web.xml ②DispatcherServlet //Spring MVC总入口 ③配置初始化参数 //classpath:application.xml,用于配置无数个 ...
- Filter,FilterChain,FilterConfig
实例: package com.zillion.app.filter; import java.io.IOException; import javax.servlet.Filter; import ...
- 底部导航栏实现一 Fragment-replace
[效果](这里下载的软件收费的试用有水印) [推荐]这里推荐一个图标网http://iconfont.cn/.以上图标来自此图标网 [项目结构] [步骤] ①创建布局文件,写底部导航栏 <?xm ...
- Spring消息之AMQP.
一.AMQP 概述 AMQP(Advanced Message Queuing Protocol),高级消息队列协议. 简单回忆一下JMS的消息模型,可能会有助于理解AMQP的消息模型.在JMS中,有 ...
- Django项目实战之用户头像上传与访问
1 将文件保存到服务器本地 upload.html <!DOCTYPE html> <html lang="en"> <head> < ...