快速部署J2EE应用到服务器的方法 (j2ee部署到服务器)

J2EE(Java 2 Enterprise Edition)是一种用于开发企业级应用程序的Java平台。在J2EE开发中,部署应用程序到服务器是一个很重要的环节。传统上,部署过程并不简单,需要手动完成多个步骤,如打包、上传、解压缩、配置、启动等。但是,在现代化的开发环境下,有很多工具和技术可以用来简化这个过程。本文将介绍一些最常用的。

方法一:使用Maven构建工具自动化部署

Maven是一种流行的Java构建工具,可以自动化构建、测试和部署整个项目。可借助Maven插件,将应用程序打包成WAR(Web应用程序归档)文件,然后自动部署到Web及应用服务器中。使用Maven自动部署,可以极大地提高开发人员的效率。

以下是使用Maven自动部署的步骤:

1. 在Maven项目的pom.xml文件中,添加War插件,如下所示:

“`

org.apache.maven.plugins

maven-war-plugin

3.2.3

src/mn/webapp/WEB-INF/web.xml

“`

2. 在命令行中使用Maven打包应用程序,如下所示:

“`

mvn clean package

“`

3. 将生成的war文件上传到服务器,如下所示:

“`

scp target/myapp.war root@myserver:/opt/tomcat/webapps/

“`

4. 在服务器上重启Web服务器(如Tomcat),如下所示:

“`

/opt/tomcat/bin/shutdown.sh

/opt/tomcat/bin/startup.sh

“`

方法二:使用容器化技术自动部署

容器化技术(如Docker)可以将应用程序封装到容器中,使其具有更高的可移植性和可伸缩性。容器化技术可以自动化打包、部署和管理应用程序。使用容器化技术,可以将部署过程简化为几个命令。

以下是使用Docker容器化技术自动部署的步骤:

1. 编写Dockerfile文件,如下所示:

“`

FROM tomcat:8.0-jre8

COPY myapp.war /usr/local/tomcat/webapps/

“`

2. 在命令行中构建Docker镜像,如下所示:

“`

docker build -t myapp .

“`

3. 运行Docker容器,如下所示:

“`

docker run -d -p 8080:8080 myapp

“`

方法三:使用CI/CD工具自动化部署

持续集成(CI)和持续交付(CD)工具可以将应用程序自动编译、测试、打包和部署。使用CI/CD工具,可以通过单击按钮或自动触发,将应用程序部署到生产环境中。使用CI/CD工具可以大幅提高整个开发流程的效率和质量。

以下是使用Jenkins CI/CD工具自动化部署的步骤:

1. 在Jenkins中创建一个新的流水线,如下所示:

“`

pipeline {

agent any

stages {

stage(‘Build’) {

steps {

sh ‘mvn clean package’

}

}

stage(‘Deploy’) {

steps {

sh ‘scp target/myapp.war root@myserver:/opt/tomcat/webapps/’

sh ‘ssh root@myserver /opt/tomcat/bin/shutdown.sh’

sh ‘ssh root@myserver /opt/tomcat/bin/startup.sh’

}

}

}

}

“`

2. 在Jenkins中配置服务器的SSH凭据,以便进行自动化部署。

3. 启动Jenkins流水线并监视部署进程。

结论

本文介绍了三种常用的:使用Maven构建工具自动化部署、使用容器化技术自动部署和使用CI/CD工具自动化部署。这些方法可以大幅提高开发人员的效率和质量。使用这些方法,可以让开发人员更专注于开发创新功能和提高应用的性能和稳定性。

相关问题拓展阅读:

J2EE是什么麻烦告诉我

J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。J2EE是Java2平台企业版(Java 2 Platform,Enterprise Edition)   J2EE核心是一组技术规范与指南,其中所包含的各类组件、碧型服务架构及技术层次,均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使键枣用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境悔亮猜。>

·宿主应用的一个运行基础框架环境。

·一套用来创建应用的Java扩展API。”(引自《J2EE服务器端高级编程》)

答:J2EE是很多技术的体,并且还在成长中。

你会遇到很多专有名词:比如(X)HTML,Servlet/P,JDBC,JMS,JNDI,EJB,XML,Web Service……。

尤其是XML和Web Service正在快速成长。幸运的是,你不需要等到学会并颂嫌所有技术后再开始编程。

大体上J2EE可以分成3个主要应用:Servlet/P,EJB,XML/Web Service 和一些支撑技术例如JDBC和JNDI。

你可以一个一个的学。

答:用来建设大型的分布式企业级应用程序。或者用更时髦的名词说就是“电子商务”应用程序。

这些企业可能大到拥有中心数据库服务器,Web服务器集群和遍布全国的办公终端,也可能小到只不过想做一个网站。

答:在这一市场目前只有一种技术可以和J2EE竞争,那就是Microsoft的.NET。

相对来说.NET要“新”一些而J2EE要“老”一些。

但是.NET只能用于Windows平台(Microsoft声称要开发C#在Linux上的虚拟机但是尚未兑现该诺言),

考虑到Linux的发展势头,你樱氏可以相信.NET不会一统天下。

答:在Sun公司提供的样例程序Pet Store上,Microsoft声称不如相同的.NET程序好。

而Sun公司反驳说这一程序不能真正体现J2EE的性能,并且指责Microsoft在数据库上做了优化。

作者没有学习过.NET因而不能妄下断言。

6 听你说了这么多,我想学着玩玩。

答:除非你想靠它当饭吃或者作为技术储备,否则请不要浪费你的时间。

Flash要好玩得多。计算机游戏就更加好玩了。

答:首先,下载一个J2EE服务器。其次,去java.sun.com下载J2EE的API。第三,找一本好的参考书。最后,找一个顺手的IDE。

J2EE服务器。你可以用Sun的J2EE SDK(免费),或者Weblogic(性能更好,但是太大,而且作者不推荐盗版行为),或者JBoss(免费,就是文档太少),或者JRun(开发版免费,作者用这个)。参考书作者感觉Wrox的《J2EE服务器端高级编程》不错,但是太老(作者手头的是2023年中文版)。你还需要去下载一些最新的技术资料(当然肯定是英文的)。

IDE如果你的机器配置够好(内存至少512M以上,256M或以下请勿考虑),可以用IBM的WSAD,不然就继续用Eclipse或者其他。

你也可以经常去水木清华的Java版逛逛,但是在发贴前先看看精华区里有没有你要的答案。

8 我下了一个J2EE服务器但绝手是不会配置。

答:请认真阅读随机指导文档,不同的服务器的配置都不一样,作者爱莫能助。

9 我发现你没有提到Tomcat。

答:Tomcat只是一个Web服务器,更准确地说主要只是一个Web Container。

J2EE Java2平台企业版  

很多想学JAVA的小伙伴的一个问题就是我该如何入门?是啊,面对郑裂这样的问题我们该如何去做呢,这是摆在很多小伙伴面前的问题。我根据自己多年的编程经验为大家分享自己的看法。

1.看到过好多个这样的提问,其实我一般真的不那么容易分享自己的这点心得的,这是之一次回答这样的“推荐书籍”方面的问题。

我买编程方面的书籍,有一个非常清晰、坚决的原则——电子工业出版社的!

对于JAVA,建议你看如下的书:

首先,《21天学通JAVA》;

然后,《30天学通JAVA项目案例开发》(这本书的内容都是实例的,非常棒的实例!适合初学者的同时,又有实际应用性!)

以上的书籍,是基于你只想学J2SE的。

我还建议你主要攻J2EE方面的知识(在中国,J2SE要高手才能找到工作,而J2SE,只是菜鸟都很可能找到工作),至于J2EE方面的书籍:

首先,《21天学通JAVAWEB开发》

然后,《30天学通JAVAWEB项目开发》

以上都是本人确切的经验来的,绝对没有介绍错

2.我联合互联网上的一群大牛,组建了一个编程的免费学习群,你只需要来我们这个群里听就行,开头的的之一部分是:四二六.,位于中间的第二部分是:396,处于最后一部分的是:284。 这里有免费的学习资源,每天直播课程,不需要你付出什么,只需要有一颗学习的心就可以了。 不是想要学习的就不要加了。

3、动手去写去练

当然只看是很难学会的。我们需要搭建IDE环境来多练习才能完全掌握这些语法。编程学习没有捷径可走,只有入门快慢之分。要学会编程只有coding、coding最后还是coding。 

送给那些懦弱的人们

A : 我是护士,我的专业就是护理。我做不了excel、做不了ppt、我学不会ps,好难,我不会写文章。

我: 我学习那么好,写字那么漂亮,编程也不错,ps也挺好、我还能打篮球、我会兵乓求、我会羽毛球、我会足球、我会设计、我会英文。(有的都是高二退学之后自己加强学习的,氏渗读书只给了我 算数、识字这些基本的的能力),我特么是神吗?

A : 人人都跟你一样?不是谁都能用很短的时间学很多的东西。

我 :我大概是神吧!你能少看一点 《爸爸去哪儿》、《额滴歌神啊》、《奔跑吧兄弟》吗,今天出了《爸爸去哪》,明天来个《女儿去哪》、《爷爷去哪儿》,你看得完?你能不能看点有用的东西?例如有点启发、让人学到东西的影片或者书?

A:委屈的瘪瘪嘴,那好,我要学习,给我买一本书吧,推荐一下。

我:书到了,学习 吧,一个月后我要看你的成绩。我来考考你

A:好难啊,我好困,我要看一会儿电视…..(然而没然后了….)

其实,这位A同学,极度的懦弱,并不是她不上进,只是那么的懦弱,那么的沉迷于垃圾节目、垃圾书籍,喜欢看不伦不类,不三不四的东西。不明白自己应该要什么,自己怎么做才能得到,认为自己的能力那么的差,做不到

B:大神,我要学node了,推荐一下node的书籍呗

我:恩,入门看一下《node于express开发》吧,然后看看node官网。还有一些博客什么的。当然了,你完全按照那本书,也能做出一些的东西了。最重要的是,要自己动手,去做东西,然后发现问题,解决问题。提升自己。

B:大神,除了那本书,还有别的书吗?

我:书很多,但书不在于多,而是,你能否理解了,并且能运用了?你看完了吗?

B:我感觉很难做,node好难。

我:做做项目,搜搜Google、看看github。

而今,我不知道这位同学水平到底到了什么水平,我想,应该不会太好,最终原因,我想是因为没有深入的去折腾,没有去写代码,没去发现自己的问题

其实,我们的潜力很大,我们能学的更好。我们能掌握的更多,但是许多人都做不到坚持、做不到深入。不肯思考,不肯的动手,是阻碍我们进步的更大原因。

后记:

人,应该要明确自己的目标,拥有理想。

人,重要的不是你站在哪里,而是你往哪个方向歼丛脊前进。

无论何时,不管你已经得到了多少,拥有了多少。都不是堕落的理由。

对于不肯上进,没意志力的人来说,等于是,你想死,任何人都救不了你!

感谢自己,感谢自己没有继续读大学。感谢自己在读书时代已经养成了独立思考,喜欢折腾的习惯。

j2eeJ2EE Java2平台企业版(Java 2 Platform,Enterprise Edition) J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。 J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。 在J2EE架构下,开发人员可依循规范基础,进而开发企业级应用;而不同J2EE供货商,同会支持不同J2EE版本内所拟定的标准,以确保不同J2EE平台与产品之间的兼容性。换言之,隐基植基J2EE架构的应用系统,基本上可部署在不同的应用服务器之上,无需或者只须要进行少量的代码修改,即能大幅提高应用系统的可移植性(Portability)。 J2EE主由升阳(SUN)与IBM等厂商协同业界共同拟定而成的技术规范,以企业与企业之间的运算为导向的JAVA开发环境。J2EE架构定义各类不同组件,如Web Component、EJB Component…等,而各类组件可以再用(reuse),让已开发完成的组件,或者是经由市面采购而得的组件,均能进一步组装成不同的系统。 对于开发人员而言,只需要专注于各种应用系统的商业逻辑与架构设计,至于底层繁琐的程序撰写工作,可搭配不同的开发平台,以让应用系统的开发与部署效率大幅提升。 J2EE的核心规范是 Enterprise Java Beans(EJBs)。EJB依照特性的不同,目前共分为三种,分别是Session Bean、Entity Bean,以及 Message Driven Bean 。其中 Session Bean 与Entity Bean 算是EJB的始祖,这两种EJB规格在EJB 1.x版本推出时就已经存在,而Message Driven Bean则是出现在EJB 2.0的规格之中。 目前业灶码谨界许多程序设计师,或者是网页设计人员,多利用P/Servlet的便利性,进而在J2EE服务器之上开发相关的应用,或是整合公司内部的各种资源。 Java 2平台依照应用领域的不同,共分为三大版本,分别是J2EE、标准版本J2SE(Java 2 Platform, Standard Edition)、微型版本J2ME(Java 2 Platform, Micro Edition),以及Java Card等。 从整体上讲,J2EE是使用Java技术开发企业级应用的一种事实上的工业标准(Sun公司出于其自身利益的考虑,至今没有将Java及其相关技术纳入标准化组织的体系),它是Java技术不断适应和促进企业级应用过程中的产物。Sun推出J2EE的目的是为了克服传统Client/Server模式的弊病,迎合Browser/Server架构的潮流,为应用Java技术开发服务器端应用提供一个平立的、可移植模陆的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的开发、管理和部署。J2EE是一个标准,而不是一个现成的产品。各个平台开发商按照J2EE规范分别开发了不同的J2EE应用服务器,J2EE应用服务器是J2EE企业级应用的部署平台。由于它们都遵循了J2EE规范,因此,使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上。 为了推广并规范化使用J2EE架构企业级应用的体系架构,Sun同时给出了一个建议性的J2EE应用设计模型:J2EE Blueprints。J2EE Blueprints提供了实施J2EE企业级应用的体系架构、设计模式和相关的代码,通过应用J2EE Blueprints所描述的体系模型,能够部分简化架构企业级应用这项复杂的工作。J2EE Blueprints是开发人员设计和优化J2EE组件的基本原则,同时为围绕开发工作进行职能分工给出了指导性策略,以帮助应用开发设计人员合理地分配技术资源。 J2EE组成了一个完整企业级应用的不同部分纳入不同的容器(Container),每个容器中都包含若干组件(这些组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Service/API。J2EE容器包括: ◆ Web容器 服务器端容器,包括两种组件P和Servlet,P和Servlet都是Web服务器的功能扩展,接受Web请求,返回动态的Web页面。Web容器中的组件可使用EJB容器中的组件完成复杂的商务逻辑。 ◆ EJB容器 服务器端容器,包含的组件为EJB(Enterprise JavaBeans),它是J2EE的核心之一,主要用于服务器端的商业逻辑的实现。EJB规范定义了一个开发和部署分布式商业逻辑的框架,以简化企业级应用的开发,使其较容易地具备可伸缩性、可移植性、分布式事务处理、多用户和安全性等。 ◆ Applet容器 客户端容器,包含的组件为Applet。Applet是嵌在浏览器中的一种轻量级客户端,一般而言,仅当使用Web页面无法充分地表现数据或应用界面的时候,才使用它。Applet是一种替代Web页面的手段,我们仅能够使用J2SE开发Applet,Applet无法使用J2EE的各种Service和API,这是为了安全性的考虑。 ◆ Application Client容器 客户端容器,包含的组件为Application Client。Application Client相对Applet而言是一种较重量级的客户端,它能够使用J2EE的大多数Service和API。 通过这四个容器,J2EE能够灵活地实现前面描述的企业级应用的架构。 在View部分,J2EE提供了三种手段:Web容器中的P(或Servlet)、Applet和Application Client,分别能够实现面向浏览器的数据表现和面向桌面应用的数据表现。Web容器中的Servlet是实现Controller部分业务流程控制的主要手段;而EJB则主要针对Model部分的业务逻辑实现。至于与各种企业资源和企业级应用相连接,则是依靠J2EE的各种服务和API。 在J2EE的各种服务和API中,JDBC和JCA用于企业资源(各种企业信息系统和数据库等)的连接,JAX-RPC、JAXR和SAAJ则是实现Web Services和Web Services连接的基本支持。 J2EE的各种组件 我们就J2EE的各种组件、服务和API,进行更加详细的阐述,看看在开发不同类型的企业级应用时,根据各自需求和目标的不同,应当如何灵活使用并组合不同的组件和服务。 · Servlet Servlet是Java平台上的CGI技术。Servlet在服务器端运行,动态地生成Web页面。与传统的CGI和许多其它类似CGI的技术相比,Java Servlet具有更高的效率并更容易使用。对于Servlet,重复的请求不会导致同一程序的多次转载,它是依靠线程的方式来支持并发访问的。 · P P(Java Server Page)是一种实现普通静态HTML和动态页面输出混合编码的技术。从这一点来看,非常类似Microsoft ASP、PHP等技术。借助形式上的内容和外观表现的分离,Web页面制作的任务可以比较方便地划分给页面设计人员和程序员,并方便地通过P来合成。在运行时态,P将会被首先转换成Servlet,并以Servlet的形态编译运行,因此它的效率和功能与Servlet相比没有差别,一样具有很高的效率。 · EJB EJB定义了一组可重用的组件:Enterprise Beans。开发人员可以利用这些组件,像搭积木一样建立分布式应用。在装配组件时,所有的Enterprise Beans都需要配置到EJB服务器(一般的Weblogic、WebSphere等J2EE应用服务器都是EJB服务器)中。EJB服务器作为容器和低层平台的桥梁管理着EJB容器,并向该容器提供访问系统服务的能力。所有的EJB实例都运行在EJB容器中。EJB容器提供了系统级的服务,控制了EJB的生命周期。EJB容器为它的开发人员代管了诸如安全性、远程连接、生命周期管理及事务管理等技术环节,简化了商业逻辑的开发。EJB中定义了三种Enterprise Beans: ◆ Session Beans ◆ Entity Beans ◆ Message-driven Beans · JDBC JDBC(Java Database Connectivity,Java数据库连接)API是一个标准SQL(Structured Query Language,结构化查询语言)数据库访问接口,它使数据库开发人员能够用标准Java API编写数据库应用程序。JDBC API主要用来连接数据库和直接调用SQL命令执行各种SQL语句。利用JDBC API可以执行一般的SQL语句、动态SQL语句及带IN和OUT参数的存储过程。Java中的JDBC相当与Microsoft平台中的ODBC(Open Database Connectivity)。 · JMS JMS(Java Message Service,Java消息服务)是一组Java应用接口,它提供创建、发送、接收、读取消息的服务。JMS API定义了一组公共的应用程序接口和相应语法,使得Java应用能够和各种消息中间件进行通信,这些消息中间件包括IBM MQ-Series、Microsoft MQ及纯Java的SonicMQ。通过使用JMS API,开发人员无需掌握不同消息产品的使用方法,也可以使用统一的JMS API来操纵各种消息中间件。通过使用JMS,能够更大限度地提升消息应用的可移植性。 JMS既支持点对点的消息通信,也支持发布/订阅式的消息通信。 · JNDI 由于J2EE应用程序组件一般分布在不同的机器上,所以需要一种机制以便于组件客户使用者查找和引用组件及资源。在J2EE体系中,使用JNDI(Java Naming and Directory Interface)定位各种对象,这些对象包括EJB、数据库驱动、JDBC数据源及消息连接等。JNDI API为应用程序提供了一个统一的接口来完成标准的目录操作,如通过对象属性来查找和定位该对象。由于JNDI是独立于目录协议的,应用还可以使用JNDI访问各种特定的目录服务,如LDAP、NDS和DNS等。 · JTA JTA(Java Transaction API)提供了J2EE中处理事务的标准接口,它支持事务的开始、回滚和提交。同时在一般的J2EE平台上,总提供一个JTS(Java Transaction Service)作为标准的事务处理服务,开发人员可以使用JTA来使用JTS。 · JCA JCA(J2EE Connector Architecture)是J2EE体系架构的一部分,为开发人员提供了一套连接各种企业信息系统(EIS,包括ERP、SCM、CRM等)的体系架构,对于EIS开发商而言,它们只需要开发一套基于JCA的EIS连接适配器,开发人员就能够在任何的J2EE应用服务器中连接并使用它。基于JCA的连接适配器的实现,需要涉及J2EE中的事务管理、安全管理及连接管理等服务组件。 · JMX JMX(Java Management Extensions)的前身是JMAPI。JMX致力于解决分布式系统管理的问题。JMX是一种应用编程接口、可扩展对象和方法的体,可以跨越各种异构操作系统平台、系统体系结构和网络传输协议,开发无缝集成的面向系统、网络和服务的管理应用。JMX是一个完整的网络管理应用程序开发环境,它同时提供了厂商需要收集的完整的特性清单、可生成资源清单表格、图形化的用户接口;访问SNMP的网络API;主机间远程过程调用;数据库访问方法等。 · JAAS JAAS(Java Authentication and Authorization Service)实现了一个Java版本的标准Pluggable Authentication Module(PAM)的框架。JAAS可用来进行用户身份的鉴定,从而能够可靠并安全地确定谁在执行Java代码。同时JAAS还能通过对用户进行授权,实现基于用户的访问控制。 · JACC JACC(Java Authorization Service Provider Contract for Containers)在J2EE应用服务器和特定的授权认证服务器之间定义了一个连接的协约,以便将各种授权认证服务器插入到J2EE产品中去。 · JAX-RPC 通过使用JAX-RPC(Java API for XML-based RPC),已有的Java类或Java应用都能够被重新包装,并以Web Services的形式发布。JAX-RPC提供了将RPC参数(in/out)编码和解码的API,使开发人员可以方便地使用SOAP消息来完成RPC调用。同样,对于那些使用EJB(Enterprise JavaBeans)的商业应用而言,同样可以使用JAX-RPC来包装成Web服务,而这个Web Servoce的WSDL界面是与原先的EJB的方法是对应一致的。JAX-RPC为用户包装了Web服务的部署和实现,对Web服务的开发人员而言,SOAP/WSDL变得透明,这有利于加速Web服务的开发周期。 · JAXR JAXR(Java API for XML Registries)提供了与多种类型注册服务进行交互的API。JAXR运行客户端访问与JAXR规范相兼容的Web Servcices,这里的Web Services即为注册服务。一般来说,注册服务总是以Web Services的形式运行的。JAXR支持三种注册服务类型:JAXR Pluggable Provider、Registry-specific JAXR Provider、JAXR Bridge Provider(支持UDDI Registry和ebXML Registry/Repository等)。 · SAAJ SAAJ(SOAP with Attachemnts API for Java)是JAX-RPC的一个增强,为进行低层次的SOAP消息操纵提供了支持。 企业级应用示例 下面我们通过假设一个企业应用的J2EE实现,来了解各种组件和服务的应用。假设应用对象是计算机产品的生产商/零售商的销售系统,这个销售系统能够通过自己的网站发布产品信息,同时也能将产品目录传送给计算机产品交易市场。销售系统能够在线接受订单(来自自己的Web网站或者来自计算机产品交易市场),并随后转入内部企业管理系统进行相关的后续处理。 参见图3,这个企业应用可以这种方式架构。该企业应用的核心是产品目录管理和产品定购管理这两个业务逻辑,使用EJB加以实现,并部署在EJB容器中。由于产品目录和定购信息都需要持久化,因此使用JDBC连接数据库,并使用JTA来完成数据库存取事务。 图3 J2EE应用示例 然后使用P/Servlet来实现应用的Web表现:在线产品目录浏览和在线定购。为了将产品目录发送给特定的交易市场,使用JMS实现异步的基于消息的产品目录传输。为了使得更多的其它外部交易市场能够集成产品目录和定购业务,需要使用Web Services技术包装商业逻辑的实现。由于产品定购管理需要由公司内部雇员进行处理,因此需要集成公司内部的用户系统和访问控制服务以方便雇员的使用,使用JACC集成内部的访问控制服务,使用JNDI集成内部的用户目录,并使用JAAS进行访问控制。由于产品订购事务会触发后续的企业ERP系统的相关操作(包括仓储、财务、生产等),需要使用JCA连接企业ERP。 最后为了将这个应用纳入到企业整体的系统管理体系中去,使用Application Client架构了一个管理客户端(与其它企业应用管理应用部署在一台机器上),并通过JMX管理这个企业应用。>

关于J2EE的问题

什么是J2EE

正如上面提到的,J2EE的核心是一组规范与指南,定义了开发企业应用系统的标准平台,由J2EE应用服务器的供应商来确保不同J2EE平台之间的兼容。

Java 2平台有三个版本,标准版本(J2SE)局搏谨,企业版本(J2EE)和微版本(J2ME)。

这里首先介绍J2SE,因为J2EE是建立在J2SE(Java 2 Platform Standard Edition)。J2SE主要适用GUI的客户端程序,也就是通常所说银晌的桌面应用,并且为我们提供了Java编程常用到的核心包;

J2EE的主要组成部分有J2EE平台,J2EE规范(Platform Specification),参考实现(Reference Implementation),兼容性测试套件(Compatibility Test Suite)和J2EE蓝图(J2EE BluePrints)。

J2EE平台主要就是利用Java2平台的标准版来为当前的企业级应用提供解决方案的设计,开发,装配和部署,并定义了一组核心API标准的接口。

J2EE规范,有相应的技术规范并对API进行了解释;

参考实现则是关于J2EE平台语法的正确范例;

兼容性测试套件可以使不同J2EE版本的产品可以运行的程序;

J2EE蓝图则是提供了基于J2EE多层应用的实例与文档,主要参考PetStore,Adventure Builder。

J2EE的发展

1997年Servlet技术的产生以及紧接着P的产生,为Java对抗PHP,ASP等等服务器端语言带来了筹码。1998年,Sun发布了EJB1.0标准,至此J2EE平台的三个核心技术都已经出现。于是,1999年,Sun正式发布了J2EE的之一个版本。并与1999年底发布了J2EE1.2,在2023年发布了J2EE1.3,在前年年底也就是2023年发布了J2EE1.4。

J2EE1.3

以下就是J2EE1.3的架构图,其中主要包含了Applet容器,Application Client容器,Web容器和EJB容器,并且包含了Web Component,EJB Component,Application Client Component,以JMS,JAAS,JAXP,JDBC,JAF,JavaMail,JTA等等技术做为基础。

1.3中引入了几个值得注意的功能:Java消息服务(定义了JMS的一组API),J2EE连接器技术(定义了扩展J2EE服务到非J2EE应用程序的标准),XML解析器的一组Java API,Servlet2.3,P1.2也都进行了性能扩展与优化,全新的CMP组件模型和MDB(消息Bean)。

J2EE1.4

J2EE1.4大体上的框架和J2EE1.3是一致的,1.4增加了对Web服务的支持,主要是Web Service,JAX-RPC,SAAJ,JAXR,还对EJB的消息传递机制进行了完善(EJB2.1),部署与管理工具的增强(JMX),以及新版本的Servlet2.4和P2.0使得Web应用更加容易。

J2EE基础与关键技术

J2EE相关的几个概念

J2EE框架是两个重要的概念之上,组件与容器。

组件是一个可以重复利用的单元,这里的组件不同与一般(我们常说的)组件,这是J2EE组件,也就是说组件属于Web组件,EJB组件,客户端组件,或者是应用组件其中的一种。每个组件都需要被打包,分别会打包成.war,.jar,.jar,.ear,每个组件由特定格式的xml描述符文件进行描述,而且服务器端的组件都需要被部署到应用服务器上面才能够被使用。

容器在应用服务器中就扮演了中间件的角色,

比如说Web容器就是为P,Servlet提供一个环境,使之不用关注系统问题;

EJB容器则是为EJB组件提供各种系统级别的服务,比如事务管理,安全管理,并且对EJB组件进行高效的管桐基理。

J2EE基础

Java

Java语言是J2EE的基础,整个体系架构都是通过Java语言来描述的,而且所有的J2EE应用服务器都是通过Java语言来实现的。所以在J2EE的产品中Java无所不在。

Http(Hyper Text Transfer Protocol),SSL3.0(Secure Socket Layer)

Http(超文本传输协议)用于在Web服务器与本地浏览器之间进行文本的传输,保证文本传输的正确性,但是由于安全性方面的考虑,在J2EE的应用中使用了SSL协议与Http协议的结合,SSL(安接层协议)主要是通过X.509数字证书技术保护信息传输的机密性和完整性,适用于Web Server的点到点方式传输。

从J2EE的体系架构图中可看出客户端,无论是Applet容器还是Client Application容器都是通过Http,SSL协议经由网络来与Web容器,EJB容器中的组件进行交互的。若考虑多台应用服务器的集群,那么Web容器,EJB容器之间也将会通过Http,SSL协议进行交互。

Xml(eXtensible Marker Language)

XML是一种可扩展的标记语言,其主要的用途体现在其良好的数据表示能力和数据传输能力,通过DTD或者是XSD对数据元素进行描述,也可以通过XSLT将XML与HTML,WML等等进行匹配。

在J2EE中的应用主要集中在组件描述符文件和Web服务上面,通过描述符文件对各个组件进行非功能性或者安全方面的控制,以及管理。所以可以说XML是J2EE中最基本的技术之一。

J2EE框架的组成

基本上通过J2EE框架图可以大致看出层次的分解情况来,我们把J2EE整个框架分为客户端,表示(Web)层,业务逻辑(EJB)层,企业信息(EIS)层;

客户端:就是需求方,可以是Browser,也可以是一般的Application Client;

表示层:主要就是通过Servlet,P等技术进行服务器端的Web组件的编程,并且协调与客户端之间,与业务逻辑层之间的数据传递;

业务逻辑层:主要是通过EJB,JMS来实现比较复杂的业务逻辑以及数据库存储工作,并且可以通过容器来进行管理事务,安全问题,并且可以对业务逻辑层的组件进行生命周期的管理;

企业信息层:主要是指企业信息系统软件,包括企业基础设施系统,如ERP(企业资源计划),CRM(客户关系管理),DBS(数据库系统)和企业遗留系统。从J2EE1.3开始,就有Connector架构标准化了J2EE平台连接到EIS上的API。

关于j2ee部署到服务器的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 快速部署J2EE应用到服务器的方法 (j2ee部署到服务器)