JavaWeb介绍与Tomcat下载启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb介绍与Tomcat下载启动相关的知识,希望对你有一定的参考价值。


JavaWeb介绍

JavaWeb也就是J2EE,JavaWeb主要是使用各种Java企业级技术来解决相关web互联网领域的技术总和。

而且这些技术有一个标准也就是J2EE规范,J2EE规范是这样定义J2EE组件的:客户端应用程序和applet是运行在客户端的组件;Java Servlet和Java Server Pages (JSP) 是运行在服务器端的Web组件;Enterprise Java Bean (EJB )组件是运行在服务器端的业务组件。J2EE组件和“标准的” Java类的不同点在于:它被装配在一个J2EE应用中,具有固定的格式并遵守J2EE规范,由J2EE服务器对其进行管理。

所以web包括:web服务器和web客户端两部分。Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。

常见的技术有以下几种:

技术分享




程序架构通常分为C/S和B/S架构:

C/S架构:

现在最常见的两种程序架构方式就是C/S和B/S架构,C/S也就是Client/Server架构,即客户端/服务器架构。是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,需要安装客户端才可进行管理操作。客户端和服务器端的程序不同,用户的操作主要在客户端,服务器端主要是提供数据管理、数据共享、数据及系统维护和并发控制等,客户端程序主要完成用户的具体的业务。

所以C/S架构的程序对能够减轻服务器压力,而且客户端是安装在用户本地的电脑上,调用本地的一些硬件设备就比较方便,适合用于大型游戏、音频软件、各种工具类软件的程序架构方式。

但是C/S架构也有缺点,升级更新还有维护比较麻烦,系统升级的话,全部的客户端都需要升级,而且没有客户端的话就无法使用任何的功能,设备需要提前安装、更新客户端。

因为这些特性,数据管理软件、网上购物、信息交互部分都不适合使用C/S架构。

C/S程序架构示意图:

技术分享


B/S架构:

另外一种B/S架构,即Browser/Server (浏览器/服务器) 结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过浏览器实现。在这种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。B/S结构是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

客户机上只要安装一个浏览器(Browser),如Chrome,FirefoxInternet Explorer,服务器安装OracleSybaseInformixSQL Server等数据库。浏览器通过Web Server同数据库进行数据交互。 以为页面上的内容全部都是从服务器上下载下来的,以后客户端没有什么更新这一说,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本,在浏览器上只需要刷新一下就能看到最新的内容,不用更新客户端。

但是B/S架构也有相应的缺点,游戏方面只能做网页小游戏,如果是大型游戏的话浏览器受不了,而且网络和服务器也支撑不了,因为全部的特效渲染、数据计算都得在服务器上完成后通过网络发送到浏览器上,这是不可能完成的,所以B/S架构不适合做大型游戏。B/S架构不能像C/S架构那样方便的访问、调用用户本地的硬件设备,访问起来很麻烦。B/S架构把系统功能实现的核心部分集中到服务器上,所以服务器的压力也比较大。

B/S程序架构示意图:

技术分享


两种程序架构的思维导图:

技术分享



在B/S架构的程序中,通过浏览器对服务器进行的请求分为动态请求和静态请求:

静态请求:

所谓静态请求,就是访问网页时仅从服务器上下载静态文件,例如网页的html、js、css、图片文件等,都属于静态文件。示意图:

技术分享


动态请求:

动态请求则是你的请求会经过服务器上的程序处理,和与数据库交互,然后再反馈到网页上,例如最经典的动态请求就是登录账户,示意图:

技术分享


可以实现动态页面的常见技术:

技术分享


关于为什么B/S架构的服务器压力比较大:

这是因为所有的网页文件都是存放在服务器的,所以客户通过浏览器访问网页时都是需要从服务器上下载的。并且所有的请求处理都在服务器上进行,动态请求还得需要通过服务器上的应用程序进行处理,并且还要与数据库进行数据的交互,所以相对于C/S架构来说B/S架构的服务器压力要大,通过搭建服务器分布式处理和集群架构能提升服务器的性能,从而可以解决服务器由于性能不足而出现的负载过高的问题。




Tomcat下载和启动

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器,主要是应用于Java方面。

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,目前Tomcat最新版本为9.0,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

Tomcat由于是使用Java开发的,所以在任何的系统平台只要有JDK都能运行,我们可以在官网下载到Tomcat服务器,网址:

http://tomcat.apache.org/

技术分享


我下载的是9.0版本:

技术分享


下载好后解压到自己指定的路径,然后可以看到解压后的目录下,有这几个文件夹:

技术分享


关于这些目录的作用可以参考以下思维导图:

技术分享


然后就是配置环境变量了:

我们需要配置三个环境变量,1.JAVA_HOME  2.PATH  3.CATALINA_HOME,如果JAVA_HOME已经配置了就可以忽略:

  1. 配置JAVA_HOME,变量值是JDK的安装目录:

技术分享


  1. 配置PATH,PATH配置的是JDK的bin目录:

技术分享


3. 配置CATALINA_HOME,这是配置Tomcat的主目录:

技术分享


思维导图:

技术分享


环境变量配置完之后就可以去启动Tomcat了,到bin目录下找到startup双击就可以启动了:

技术分享


启动成功:

技术分享


关于Tomcat启动时闪退的问题:

  1. 如果你启动Tomcat时出现闪退的情况,一般是环境变量没有配置好,这时候仔细检查一下环境变量,特别是CATALINA_HOME环境变量。

  2. 然后就是已经有Tomcat启动了,所以端口占用的情况下也会出现闪退。

  3. 我们可以把startup拖到cmd里执行,会反馈出错误日志,示例:

技术分享

以上这个信息就是CATALINA_HOME环境变量没有配置好


如果检查了环境变量都没有问题,还是依旧闪退的话,可以自己创建一个run.bat文件(名称可自定义),然后定义如下内容:

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_112

set PATH=%JAVA_HOME%\bin;%PATH%

set CATALINA_HOME=..

startup.bat


然后点击这个新建的bat文件来启动,一般这种方法就能够解决环境变量的问题。

启动成功后,通过浏览器访问http://localhost:8080/,因为Tomcat的默认端口是8080,出现以下页面就是启动成功并且能够访问Tomcat的默认页面了:

技术分享


思维导图:

技术分享



















本文出自 “zero” 博客,请务必保留此出处http://zero01.blog.51cto.com/12831981/1977550

以上是关于JavaWeb介绍与Tomcat下载启动的主要内容,如果未能解决你的问题,请参考以下文章

Javaweb复习资料

Javaweb开发环境与搭建

javaweb学习总结-tomcat服务器安装与基本使用

JavaWeb-Tomcat简介

[JavaWeb-Tomcat]web服务器软件_Tomcat介绍

eclipse异常关闭,无法启动tomcat解决办法