Web概述(二)
Web概述(二)
1. 什么是Web
更加全面的介绍请看之前的概述(一)。
2. 什么是JavaWeb
使用java语言进行Web开发。
3. Web的架构
3.1 C/S结构的软件
即我们常说的客户端/服务器,这类软件通常需要安装。如QQ,迅雷,播放器。(服务器-客户机,即Client-Server(C/S)结构。C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。)
- 优点
可以减轻服务器的压力,一部分的代码可以放在客户端执行。应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。
数据的储存管理功能较为透明。界面美观 - 缺点
一但服务器更新,客户端也要更新。系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
分布式开发较弱。对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于Windows2000或Windows XP。
3.2 B/S结构的软件
即浏览器/服务器结构。B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如Netscape Navigator或Internet Explorer,服务器安装SQL Server、Oracle、MYSQL等数据库。浏览器通过Web Server 同数据库进行数据交互。
- 优点
服务器更新,客户端不用更新。因为浏览器就是客户端。B/S架构最大的优点是总体拥有成本低、维护方便、 分布性强、开发简单,可以不用安装任何专门的软件就能 实现在任何地方进行操作,客户端零维护,系统的扩展非常容易,只要有一台能上网的电脑就能使用。
分布式开发较强 - 缺点
服务器压力相对较大,最大的缺点就是通信开销大、系统和数据的安全性较难保障。
界面不如客户端效果
3.3 两种结构对比
4. Web服务器介绍
Web服务器是指驻留于因特网上某种类型计算机的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该文件(即文件类型)。服务器使用HTTP(超文本传输协议)与客户机浏览器进行信息交流,这就是人们常把它们称为HTTP服务器的原因。
简单点说:
- 硬件说:是一台电脑(配置较高)
- 软件上:需要在该电脑上安装对应的Web软件
4.1 常用的Web服务器
大型或者中型服务器
- Tomcat:Apache开源的一个免费的web服务器,遵循Java ee的servlet和JSP规范。
- Apache:Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。它源于NCSAhttpd服务器,当NCSAWWW服务器项目停止后,那些使用NCSA WWW服务器的人们开始交换用于此服务器的补丁,这也是apache名称的由来(pache 补丁)。世界上很多著名的网站都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。运行在PHP平台上
- WebSpere:IBM开发的一个大型收费web服务器,满足EE开发的所有规范
- WebLogic:BEA开发的一个大型收费web服务器,满足EE开发的所有规范;BEA WebLogic Server 在使应用服务器成为企业应用架构的基础方面继续处于领先地位。
-
IIS:
Microsoft
的Web服务器产品为Internet Information Services (IIS),IIS 是允许在公共Intranet或Internet上发布信息的Web服务器。ⅡS是目前最流行的Web服务器产品之一,很多著名的网站都是建立在ⅡS的平台上。IIS提供了一个图形界面的管理工具,称为Internet服务管理器,可用于监视配置和控制Internet服务。运行在.net平台上 - JBoss:是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用,而不用支付费用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
4.2 Web的资源
- 静态的Web资源
如HTML、CSS、JavaScript - 动态的Web资源
如Servlet,JSP,PHP,ASP等。
5.常用服务器Tomcat
5.1 安装过程容易出现的问题
安装过程中:
- 没有安装好java环境
- 端口冲突问题
看我之前写的Tomcat安装教程里面有:Tomcat安装、配置、简单使用(手机访问)
5.2 Tomcat的目录结构
-
bin:二进制文件(一些命令文件,如start.bat启动文件和关闭文件等)
-
conf:配置文件(如server.xml和logging.properties等文件)
-
lib:运行Tomcat所需要的一些jar包。
-
logs:运行Tomcat产生的日志信息。包括报错信息等。
-
temp:运行Tomcat所产生的临时文件
-
webapps:Web项目文件,需要发布的Web项目都要放在这个目录下面。
-
work:JSP文件所翻译成servlet对应的文件(java类)
5.3 动态Web资源的目录结构(重要!)
动态Web资源目录
- 静态资源(HTML+CSS+JavaScript)
- JSP页面
- Web-INF文件夹
Web.xml(包含web的一些配置文件信息,如servlet过滤器)
classes文件夹(可选)
lib文件夹(包含项目用到的第三方jar包等,可选)
如我写的一个项目,其结构如下:
5.4 Tomcat项目发布方式
5.4.1 方式一:直接将项目复制到Webapps目录下
第一步:
第二步:开启服务器,测试。
5.4.2 方式二:在Tomcat的conf/server.xml里面配置相应的虚拟路径
如图,添加Context标签。
在<Host>
标签里面配置<Context>便签
,必须添加属性:path,docBase。
- path是Tomcat里面的虚拟路径
- docBase是对应的真实磁盘路径。不用具体到index.html,否则启动Tomcat会报错:
java.lang.IllegalArgumentException:指定的主资源集无效
。因为server.xml配错一点都会使得Tomcat无法使用,server.xml是核心配置文件,官方不推荐该方式部署项目。
测试:
5.4.3 方式三:在Tomcat的conf/Catalina/localhost/下配置Tomcat的虚拟路径(官方推荐)
-
conf/Catalina/localhost/创建需要的项目文件
name.xml
,项目的名字name对应着我们方式二里面的path。(我这里是third_program.xml) -
将方式二里面的server.xml的context内容放到该文件里面
-
在docBase对应的真实目录配置好Web项目。
-
启动服务器,访问。