
Tomcat是Apache 软件基金会的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 24 和JSP 20 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为90。
扩展资料:
Tomcat-配置虚拟主机
关于serverxml中“Host”这个元素,只有在设置虚拟主机的才需要修改。虚拟主机是一种在一个web服务器上服务多个域名的机制,对每个域 名而言,都好象独享了整个主机。实际上,大多数的小型商务网站都是采用虚拟主机实现的,这主要是因为虚拟主机能直接连接到Internet并提供相应的带 宽,以保障合理的访问响应速度,另外虚拟主机还能提供一个稳定的固定IP。
基于名字的虚拟主机可以被建立在任何web服务器上,建立的方法就是通过在域名服务器(DNS)上建立IP地址的别名,并且告诉web服务器把去往不同域 名的请求分发到相应的网页目录。
参考资料来源:百度百科-Tomcat
在开源的Java应用服务器领域 像JBoss Tomcat及Apache的Geronimo 他们不仅仅是商业领域的领跑者 同时是技术领域的先行者 当然 所有的Java EE应用服务器的实现不尽相同 但其很多方面具有一定程度的可比性 本文对JBoss Geronimo 及Tomcat 三种开源的Java EE应用服务器 就他们的特性 部署及性能等方面进行一一比较 一 前言 当企业级的Java应用程序需要真正的应用部署时 Java EE应用服务器是必不可少的工具 研究表明 除了商业的应用服务器之外 开源的Java EE应用服务器开始成为很多Java企业级应用的最佳选择 而JBoss Tomcat及Apache的Geronimo是其中最主流的开源Java EE应用服务器 而这三者中 尽管JBoss和Tomcat并非 %的实现了Java EE 标准 但这二者占有的市场份额相对比较大 Geronimo是对Java EE 标准 %的实现 正在快速的发展 如果读者想在Java EE领域找份像样的工作 对这三种开源的应用服务器应该达到比较熟悉的程度 并能在一定程度上进行比较区分 在本文中 对这三种主流的应用服务器 就其特性 部署及性能等方面进行比较 分析了他们各自的特色对该应用服务器的重要性 当然 也提供了一些如何选择适合项目的服务器的原则及建议
二 特性比较 表 就JBoss Tomcat 及Geronimo 的特性进行全面的比较 请注意 表中用到的 部分支持 表述 表明该应用服务器并非完全的支持 需要安装一些额外包 而其中的 原则上支持 表述 表明该应用服务器需要第三方的安装包的支持 注 三种应用服务器均在Linux Solaris Windows及Mac OS X上进行过测试 表 Java EE应用服务器特性比较
特性 JBoss Geronimo Tomcat Java EE 一致性 部分支持 完全支持 部分支持 支持EJB 支持 支持 原则上支持 JSP 和Servlet 支持 支持 支持 JSF 支持 支持 原则上支持 客户化插件 支持 支持 不支持 业务规则引擎 原则上支持 原则上支持 原则上支持 Hibernate x 支持 原则上支持 原则上支持 集群 支持 支持 部分支持 Eclipse IDE 支持 支持 支持 当读者的应用需要比较特殊的扩展 或是想与Java EE 最贴近时 那么 Geronimo 是最佳的开源Java EE应用服务器选择 尽管JBoss 与Sun的Java EE标准在实现上有一定的出入 但JBoss team提供了许多与Java EE标准很符合的技术 同时也扩充了Java EE 的标准范围 而Tomcat 本身就是一种轻量级的解决方案 所以它不并包括Java EE 的所有特性 或是在JBoss及Geronimo中所提供的特性 但正是由于它的轻量级 才使它对内存的占有量比较少 并且比其它两种服务器运行起来更快 .Java EE 一致性 Sun公司的Java EE 标准是一种行业标准 而作为这种标准的实现 开源的Java EE 应用服务器应该与其尽量的保持一致 因此Java EE 的一致性是一个很重要的指标 在这三种开源的实现中 Geronimo是实现得最好 与Java EE 标准最贴近的应用服务器 JBoss 支持绝大部分Java EE 的特性 当然 不久即将发布的JBoss 将完全支持Java EE 的所有特性 而Tomcat一般看成是JSP/servlet的容器 仅仅支持Java应用服务器的基本特性.支持EJB EJB(Enterprise JavaBeans)是指能在Java EE服务器部署的Java组件 它通常将一些业务功能打包成可重用的组件 新发布的EJB 提供了许多新功能 解决了旧版本中许多问题 JBoss 及Geronimo 均支持EJB Tomcat 本身并不支持EJB 但Apache OpenEJB项目可以使Tomcat支持EJB 据称Tomcat可以运行一种嵌入式的JBoss EJB 容器
.支持JSP /Servlet 对JSP/servlet的支持是绝大部分Java服务器应提供的最基本功能 JSP 和Servlet 是Java EE 对JSP/servlet的升级功能 JBoss Geronimo 及Tomcat 均支持JSP/servlet这一特性
.支持JSF JSF(Java Server Faces)是一种在Java EE应用部署的组件式架构 提供基本的Web开发的用户界面 与请求驱动的MVC(Model View Controller)的架构不同的是 JSF采用了组件驱动的模式 就目前的JSF 而言 JBoss 及Geronimo 都有很好的支持 而运行在Tomcat 时有不少的问题待解决
.支持客户化插件 客户化插件支持 意味着可以在原有应用服务器功能的基础上 开发新的功能 并能很好的协同使用 在JBoss中使用MBeans(managed beans)来处理插件开发 而Geronimo也采用类似的处理方式 只是名称不一样 叫GBeans 这些客户的Beans为开发及部署客户资源时 提供一系列统一的接口
.支持业务规则引擎 几乎所有的应用程序都是建立在一系列业务规则之上 或称之为业务逻辑 而业务规则引擎组件则能帮助管理与简化业务逻辑编程 一般的编程过程中 程序员最常见的逻辑有如if/then逻辑 而有了业务规则引擎 则可以实现许多更加智能的业务逻辑 Drools作为一种业内很流行 标准化的业务规则引擎 在JBoss Geronimo 及Tomcat 中均可得到支持 Geronimo完全支持Drools 而JBoss支持Drools的历史最久 已达三年之久 并使JBoss/Drools成为了一种非常有市场竞争力的业务规则解决方案
.支持Hibernate x Hibernate为Java编程提供了强有力的关系/对象模型(ORM Object relational mapping) Hibernate可以将面向对象的模型映射为关系型数据库 这对Java开发来说是最有吸引力的 Hibernate作为一种开源的软件 最早就是由于JBoss的一个团队所开发(Gavin King) 当然 JBoss Geronimo 及Tomcat 均支持Hibernate
.支持JBoss Seam JBoss Seam是一种著名的应用框架 集成了众多的Java及Web技术 例如Ajax JSF Java Portlets BPM(Business process management)等技术 Seam是JBoss的项目 理所当然 JBoss 自然支持它 同样Geronimo 也支持JBoss Seam 据JBoss Seam的开发团队称 Tomcat可以通过使用JBoss嵌入式EJB 容器来支持JBoss Seam
.支持集群 集群通过并行在多台服务器运行同样的服务 从而大大的提高应用的吞吐量 达到所谓的高负荷的效果 由于采用了数台服务器同时运行 所以当其中的某台服务暂时或死机时 对客户不会造成服务停止 从而达到业务的可持续 集群极大的提高了企业级的Java应用的性能 吞吐量等能力 JBoss Geronimo 及Tomcat 均以同样的方式来支持集群 JBoss在集群层使用及时复制的方式来达到集群的目的 而Geronimo所发布的集群 还处于测试阶段 需要时间的考验 如果有兴趣 可以与Apache基金组织联系
. 支持Eclipse IDE Eclipse是目前最流行的Java开发工具 自然 与Eclipse的集成是众多Java EE 应用服务器应该提供的功能 JBoss Geronimo及Tomcat均支持与Eclipse整合 特别地 JBoss还有自己的Eclipse版本 称为Red Hat Developer Studio 目前正处于测试的阶段 利用Geronimo提供的工具 可以省去手工配置XML文件的烦琐 同时 数据库连接池工具都可以自动的下载所需要的数据库连接驱动
三 部署 这三种应用服务器的安装均十分简单 在相关的网站上下载zip或tar包进行解压 唯一需要配置的是设置JAVA_HOME环境变量(不过一般均有配置) 注意 在Linux/Unix系统下 需要先发送chmod命令 .Geronimo 对Geronimo 来说 进行配置及部署Java应用程序非常的简单 特别是通过它提供的Web控制台更加简单 Geronimo控制提供了许多简单的功能来帮助开发人员进行应用程序的配置 可以进行数据库的连接池测试及安全设置或配置等
图 Geronimo控制台
JBoss JBoss 有非常漂亮的Web管理控制台 但它所提供的管理功能及特性与Geronimo不尽相同 首先看到的是JBoss的状态及其监测信息 但并没有提供部署功能 而部署Java应用时 只需要将它复制到default/deploy文件夹下面 JBoss会自动的检测到它并进行相关的快速部署 当然 也可以通过修改配置jboss service xml来进行客户应用程序所在目录的映射
图 JBoss控制台 Tomcat Tomcat 不愧为一款快速的轻量级的应用服务器 它的控制台提供了基本的部署功能 可以通过Tomcat的控制台进行服务的启动/停止及WAR包的deploy/undeploy *** 作 当然也提供了Tomcat的运行状态及监测信息 同时有很好的用户授权系统
图 Tomcat控制台
四 性能 就可靠性而言 性能应该是所以的应用服务器所应该提供的最重要的特性 在本文中 笔者做了一个小实验 使用JSP页面及编译好的servlet来测试应用服务器所能处理的用户会话个数以及所能连接的用户数量 当然 实际的Java应用是更加复杂的 而本实验中的JSP页面及servlet是比较简单的 主要用于测试Web应用服务器的稳定性 可靠性及速度 使用的测试机器为 双核 位 CPU G的内存 在实验中 让第一种应用服务器运行到 个会话 当然 这些会话不并是同时连接
图 多Session测试JSP页面结果
lishixinzhi/Article/program/Java/ky/201311/28190
Java的就业岗位主要有以下这些,仅供参考~!
1、Java与电子商务
电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务。
Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的语言。
2、Java企业级应用开发
JavaEE是目前开发企业级Web应用的主流框架技术,在当今企业级项目开发中与微软公司的MSNET一起构成两大核心框架技术。JavaEE的主流应用服务器和集成开发工具。
主要内容包括JavaEE框架核心结构、应用服务器、集成开发工具、Servlet组件编程、请求处理编程、响应处理编程、会话跟踪编程、ServletContext对象和应用、过滤器编程、器编程、JSP、EL和JSTL、JNDI服务基础和编程、JDBC服务编程、JavaMail编程和JavaEEMVC式架构应用。
3、Java网站建设
近几年来,网站建设业务一直呈快速上升势头,行业市场越来越大。就国内情况而言,沿海发达省市比中西部省市市场需求要大,业务普及工作也很到位,许多行业形成了竞相建设企业网站,开展网络营销的局面。新技术的应用将促使企业网站建设更具魅力。
Java编程语言,net技术和服务器CDN技术也将使网站结构更紧密,访问更流畅,更能适应新的要求。但是以目前的市场分析Java做网站成本太高,对硬件要求比较高,中小企业会放弃,但是像大企业还是比较喜爱Java技术。
4、Java游戏编程
对于游戏开发来说,由于涉及到比较复杂的情况,开发过程很多时候是一个不断修改的过程,可以方便地修改游戏内容是十分关键的。
对于很多游戏引擎来说,都有自己编写的脚本解释器,用来解释一些自定义的游戏脚本语言(一般为命令式脚本,比如moveplayer(intx,inty),playersmile()之类的东西),另一些则提供了例如lua和rubby等的脚本语言来访问游戏引擎。
由于其虚拟机特性,Java本身就可以用来编写游戏脚本,目前也有例如beanshellgroovy等脚本语言可以方便的无缝的和Java语言进行交互,这些都极大地方便了Java游戏编程。
二、Java工程师职业方向
1、成为管理人员,例如产品研发经理,技术经理,项目经理等继续;
2、二是技术工作之路,成为高级软件工程师、需求工程师等。
希望能帮到你,望采纳~
如果想学习的话,可以私聊我获取资料,免费提供哦~这些软件架构可以按照一个从客户端到服务器端的顺序来介绍
1,客户端,通常为windows系列的 *** 作系统,少数为Linux以及Mac的。
2,web服务器,一般为IIS或者apache,如果有中间件,通常采用中间件集成的web服务器
3,中间件, net系列的通常作为windows服务器组件而存在,java的要自己另外安装,通常有tomcat, jboss, weblogic, websphere等等
4, 数据库, mysql, MS SQLServer, Oracle, DB2等等
5, 服务器端的 *** 作系统,通常为Windows Server, Linux Server(Redhat/Suse/Fedora/CentOS/Ubuntu等), Unix(Solaris, AIX, HP-UX等)
6,开发环境,一般有Visual Studio,Eclipse等Tomcat 介绍 如今,基于Web的应用越来越多,传统的Html已经满足不了如今的需求。我们需要一个交互式的Web,于是便诞生了各种Web语言。
如Asp,Jsp,Php等。当然,这些语言与传统的语言有着密切的联系,如Php基于C和C++语言,Jsp基于Java语言。Tomcat即是一个Jsp和Servlet
的运行平台。
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发
而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具创新
的java产品,可见其在业界的地位。
Tomcat最新版本是40x40x与3x的架构不同,而是重新设计的。Tomcat40x中采用了新的Servlet容器:Catalina,完整的实现了Servlet23
和Jsp12规范。Tomcat提供了各种平台的版本供下载,可以从> 软件产品包括DB2、Lotus、Rational、Tivoli、WebSphere五大家族。[1]
DB2:数据库管理系统、内容管理、商业智能、数据仓库、数据挖掘等。
Lotus:桌面办公、协作、门户等。
Rational:软件工程、软件生命周期管理、企业资产组合管理、应用开发等。
Tivoli:系统管理、性能监控、调优、网格计算等。
WebSphere:应用服务器、信息集成、应用开发等。
服务器产品包括:基于Intel架构的服务器xSeries,基于AMD架构的服务器,BladeCenter刀片服务器,UNIX 服务器pSeries,中型企业级服务器iSeries,大型主机zSeries。
专业图形工作站:A Pro系列, M Pro系列, Z pro系列, T221超高分辨率平面显示器。
网格计算
存储技术:磁盘存储系统,磁带存储,网络存储,存储软件。
零售终端:商业收款机,POS软件
其它产品: ACS 先进布线系统,IBM 电源解决方案产品目录 ,Cisco 产品及服务
随着微软公司对计算机产业的影响已经由促进变成了阻碍,IBM成为了打倒微软的希望所在,IBM支持着所有热爱自由的计算机使用者。Java的就业岗位主要有以下这些,仅供参考~!
1、Java与电子商务
电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务。
Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的语言。
2、Java企业级应用开发
JavaEE是目前开发企业级Web应用的主流框架技术,在当今企业级项目开发中与微软公司的MSNET一起构成两大核心框架技术。JavaEE的主流应用服务器和集成开发工具。
主要内容包括JavaEE框架核心结构、应用服务器、集成开发工具、Servlet组件编程、请求处理编程、响应处理编程、会话跟踪编程、ServletContext对象和应用、过滤器编程、器编程、JSP、EL和JSTL、JNDI服务基础和编程、JDBC服务编程、JavaMail编程和JavaEEMVC式架构应用。
3、Java网站建设
近几年来,网站建设业务一直呈快速上升势头,行业市场越来越大。就国内情况而言,沿海发达省市比中西部省市市场需求要大,业务普及工作也很到位,许多行业形成了竞相建设企业网站,开展网络营销的局面。新技术的应用将促使企业网站建设更具魅力。
Java编程语言,net技术和服务器CDN技术也将使网站结构更紧密,访问更流畅,更能适应新的要求。但是以目前的市场分析Java做网站成本太高,对硬件要求比较高,中小企业会放弃,但是像大企业还是比较喜爱Java技术。
4、Java游戏编程
对于游戏开发来说,由于涉及到比较复杂的情况,开发过程很多时候是一个不断修改的过程,可以方便地修改游戏内容是十分关键的。
对于很多游戏引擎来说,都有自己编写的脚本解释器,用来解释一些自定义的游戏脚本语言(一般为命令式脚本,比如moveplayer(intx,inty),playersmile()之类的东西),另一些则提供了例如lua和rubby等的脚本语言来访问游戏引擎。
由于其虚拟机特性,Java本身就可以用来编写游戏脚本,目前也有例如beanshellgroovy等脚本语言可以方便的无缝的和Java语言进行交互,这些都极大地方便了Java游戏编程。
二、Java工程师职业方向
1、成为管理人员,例如产品研发经理,技术经理,项目经理等继续;
2、二是技术工作之路,成为高级软件工程师、需求工程师等。
希望能帮到你,望采纳~
如果想学习的话,可以私聊我获取资料,免费提供哦~
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)