Tomcat开发Web站点

Web开发的相关知识


B/S架构和C/S架构

C/S架构是Client/Server的简写,也就是客户机/服务器端的交互。常见应用 : QQ. 迅雷. 360. 旺旺等

B/S架构是Browser/Server的简写,也就是浏览器/服务器端的交互。常见应用 : 网银系统,淘宝 ,京东 12306等

通讯协议


在使用B/S架构开发应用程序时,都会涉及到浏览器与服务器之间的交互。



当浏览器向Web服务器发送一个请求时,Web服务器会对请求做出处理,并将处理结果返回。在这个交互过程中,浏览器是通过URL地址来访问服务器的,并且数据在传输过程中需要遵循HTTP协议。



1、URL地址

URL用于唯一标识它的访问位置,以便浏览器可以访问到,这个访问标记符称为URL(Uniform Resource Locator统一资源定位符)。

在URL中,包含了Web服务器的主机名、端口号、资源名以及所使用的网络协议,具体示例如下:

http://www.itcast.cn:80/index.html



2、HTTP协议

HTTP协议是Hypertext Transfer Protocol的缩写,称为超文本传输协议。它专门用于定义浏览器与Web服务器之间交换数据的格式。

Web资源


放在Internet网上供外界访问的文件或程序被称作Web资源,根据呈现的效果不同,Web资源可分为动态Web资源和静态Web资源。



静态Web资源通常包括html、css、jpg等。

动态Web资源包括JSP、Servlet、ASP、PHP等。

Web服务器


J2EE企业级开发Java规范。标准规范包括 : servlet 、jsp 、jdbc 、xml 、jta 、javamail 等。在java中规范就是接口。J2EE 又称为 JavaEE。

WEB服务器对 JavaEE 规范部分或全部支持 (实现),也就是WEB服务器实现部分或全部接口。



Web服务器是指为特定组件提供服务的一个标准化的运行时的环境,其中封装了JSP运行所需要的底层API,为组件提供事务处理,数据访问,安全性,持久性等服务。

安装Tomcat


Tomcat简介


是Sun公司(已被Oracle收购)推荐的运行Servlet和JSP的容器(引擎),其源代码是完全公开的。

Tomcat就是一个免费并且开源的JSP服务器



Tomcat运行稳定、可靠、效率高,不仅可以和目前大部分主流的Web服务器(如Apache、IIS服务器)一起工作,还可以作为独立的Web服务器软件。

因此,越来越多的软件公司和开发人员都使用它作为运行Servlet和JSP的平台。



Tomcat 服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器 ,在中小型系统和并发访 问用户不是很多 的场合下被普遍使用,是开发和调试JSP程序的首选。

安装与启动


下载地址http://tomcat.apache.org/

将下载好的Tomcat压缩文件直接解压到指定的目录便可完成 Tomcat的安装。

鼠标双击startup.bat文件,便会启动Tomcat服务器

Tomcat启动后,在浏览器的址栏中输入http://localhost:8080或者http://127.0.0.1:8080访问Tomcat服务器

目录结构


/bin 存放在Windows平台以及Linux平台上启动和关闭Tomcat的脚步文件

/conf 存放Tomcat服务器的各种配置文件,其中最重要的配置文件是server.xml

/lib 存放Tomcat服务器所需的各种jar文件

/temp 存放Tomcat产生的临时文件

/logs 存放Tomcat的日志文件

/webapps 当发布Web应用时,默认情况下把Web应用文件存放于此目录下

/work Tomcat把由JSP生成的Servlet放于此目录下

Tomcat诊断


双击bin目录中的startup.bat脚本文件时,命令行窗口一闪而过。



这时,我们可以先启动一个命令行窗口,在这个命令行窗口中进入Tomcat安装目录中的bin目录,然后在该窗口中执行startup.bat命令,就会看到错误信息显示在该窗口中



解决:配置JAVA_HOME环境变量

发布Web应用


什么是Web应用


在Web服务器上运行的Web资源都是以Web应用形式呈现的。

所谓Web应用就是多个Web资源的集合,Web应用通常也称为Web应用程序或Web工程。

一个Web应用由多个Web资源或其它文件组成,其中包括html文件、css文件、js文件、动态web页面、java程序、支持jar包、配置文件等。

配置Web应用虚拟目录

开发好的Web应用要想被外界访问,除了需要安装一个Web服务器外,还要将该Web应用映射成为一个能够供外界访问的虚拟Web目录,这个过程称为配置Web应用虚拟目录。



Tomcat服务器从6.0的版本开始,会自动管理webapps目录下的Web应用,并将Web应用目录的名称作为虚拟目录名称。



如果将所有的Web应用都放在webapps目录下也是不合理的。



1、在server.xml文件中配置虚拟目录

首先打开<Tomcat安装目录>\conf目录下的server.xml文件,在<Host>元素中添加一个<Context>元素,具体代码如下所示: 

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">

<Context path="/chapter02" docBase="d:chapter02"  />

</Host>



2、在自定义xml文件配置虚拟目录

首先进入<Tomcat安装目录>\conf\Catalina\localhost目录,在该目录中创建一个名为chapter02.xml的配置文件,然后将server.xml文件中配置好的<Context>元素拷贝到该文件中,重新启动Tomcat服务器

配置Web应用默认页面



当访问一个Web应用程序时,通常需要指定访问的资源名称,如果没有指定资源名称,则会访问默认的页面。



为了使初学者更好地理解默认页面的配置方式,首先查看一下Tomcat服务器安装目录下的web.xml文件是如何配置的,打开<Tomcat根目录>\conf目录下的web.xml文件



配置Web应用默认页面的方式比较简单,只需要修改WEB-INF目录下的web.xml文件的配置。

Tomcat的管理平台

Tomcat管理平台列出了所有的Web应用及其状态,并且提供了控制每个Web应用的启动、停止和卸载的功能。



“Manager App”链接进入Tomcat管理平台

配置虚拟主机


(1)在Tomcat服务器中配置虚拟主机需要使用<Host>元素,打开Tomcat安装目录下的server.xml文件,发现有如下所示的一行代码:

<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">



<Host>元素代表一个虚拟主机,它的属性name和appBase分别表示虚拟主机的名称和路径,在此,表示虚拟主机的名称为localhost,路径为<Tomcat安装目录>/webapps路径。



(2)这时,如果希望添加一个虚拟主机,只需要在server.xml的<Engine>元素中增加一个<Host>元素,将网站存放的目录配置为对应名称的主机即可,例如,将d:\itcast目录配置为一个名为itcast的虚拟主机,具体示例代码如下:

<Engine name="Catalina" defaultHost="localhost">

...

<Host name="itcast" appBase="d:\itcast">

...

</Host>

</Englin>



(3)<Engine>元素中有一个defaultHost属性,该属性用于指定默认的虚拟主机,即访问的主机如果不存在,则会访问默认的虚拟主机。将itcast配置为默认虚拟主机的具体实现代码如下所示

<Engine name="Catalina" defaultHost="itcast">

...

<Host name="itcast" appBase="d:\itcast">

...

</Host>

</Englin>

搭建Web站点


(1)在D盘根目录中创建一个newhost目录,将开发好的chapter02应用拷贝到newhost目录中,然后将welcome.html页面中的内容修改为“这是newhost目录中的index.html文件”。

(2)在server.xml文件中增加一个<Host>元素,将该元素的name属性设置为www.newhost.com,appBase属性设置为d:\newhost

(3)在Windows系统的hosts文件中配置虚拟主机与IP地址的映射关系,具体代码如下:

127.0.0.1   www.newhost.com

(4)重新启动Tomcat服务器,访问welcome.html页面

Java精选笔记_Tomcat开发Web站点的更多相关文章

  1. Java精选笔记_JSP开发模型

    JSP开发模型 JSP Model JSP Model1简单轻便,适合小型Web项目的快速开发. JSP Model2模型是在JSP Model1的基础上提出的,它提供了更清晰的代码分层,更适用于多人 ...

  2. vs中开发web站点使IIS Express支持局域网连接

    vs中开发web站点使IIS Express支持局域网连接 在开发webapi的时候,客户端设备都会使用局域网的地址访问webapi,有时候需要调试api.这个时候就需要使用一些技巧了,这里我记录了我 ...

  3. 读书笔记-构建高性能Web站点

    基本概念 带宽:通常说的带宽比如8M带宽,是指主机与互联网运营商的交换机之间的数据传输速度,因为数据链路层的流量是通过控制接收方实现的.而百兆网卡则是指网卡的发送速度为100Mbit/s,则是指网卡发 ...

  4. Java精选笔记_JSTL(JSP标准标签库)

    JSTL(JSP标准标签库) JSTL入门 JavaServer Pages Standard Tag Library:JSP标准标签库 在JSP中可以通过Java代码来获取信息,但是过多的Java代 ...

  5. Java精选笔记_Servlet技术

    Servlet技术 Servlet开发入门 Servlet接口 针对Servlet技术的开发,SUN公司提供了一系列接口和类,其中最重要的是javax.servlet.Servlet接口. Servl ...

  6. VM Depot 助您使用本地开源软件架设开发 Web 站点

     发布于 2014-04-25 作者 云 浪生 使用 VM Depot 中的镜像在 Azure 上创建.开发.部署网站与应用不仅方便快捷而且省时省力!感谢开源社区的大力支持,我们的VM Depot ...

  7. 从零开始,使用python快速开发web站点(1)

    环境:ubuntu 12.04 python版本:  2.73 ok,首先,既然是从零开始,我们需要的是一台可以运行的python的计算机环境,并且假设你已经安装好了python, (ubuntu 或 ...

  8. Java精选笔记_国际化

    国际化 什么是国际化 指软件在开发时就应该具备支持多种语言和地区的功能,当应对不同国家和地区的用户访问,针对不同国家和地区的用户,提供相应的.符合来访者阅读习惯的页面和数据. 由于国际化interna ...

  9. Java精选笔记_自定义标签

    自定义标签 自定义标签入门 什么是自定义标签 自定义标签可以有效地将HTML代码与Java代码分离,从而使不懂Java编程的HTML设计人员也可以编写出功能强大的JSP页面 JSP规范中定义了多个用于 ...

随机推荐

  1. CTreeCtrl 控件实现多选并取得选中项

    刚开始以为实现起来很难,所以就在网上寻找实现的扩展控件,到最后才发现只要把CTreeCtrl 控件的Check Boxes 属性设为真就可以了,会在每个树形节点前添加一个CheckBox. 多选已经实 ...

  2. 浅谈C# application.DoEvent作用

    Application.DoEvents()的作用:处理所有的当前在消息队列中的Windows消息. private void button1_Click(object sender, EventAr ...

  3. dp之最长递增、公共子序列总结

    1.最长递增子序列模板poj2533(时间复杂度O(n*n)) #include<iostream> #include<stdio.h> #include<string. ...

  4. android开发中用到的px、dp、sp

    先介绍一下这几个单位: px : pixels(像素),相应屏幕上的实际像素点. dip :device independent pixels,与密度无关的像素,基于屏幕密度的抽象单位. 在每英寸16 ...

  5. xml选择节点方法

    1.选取某个节点 方法一:newNode = document.DocumentElement.SelectSingleNode("//student[@id='A103']"); ...

  6. WampServer安装环境

    今天在阿里云ESC服务器上,用的Window Server2012版本,安装WampServer时,报错msvcr100.dll缺失.上网下了好几次,也确定是64位的放到了C:\Windows\Sys ...

  7. WARNING: arch/arm/mach-omap2/built-in.o(.text+0x12cdc): Section mismatch in reference from the function mmc0_init() to the (unknown reference) .init.data:(unknown)

    解决方法,找到对应的不能使用 __init 字眼的地方,删除他即可. 最后删除 296 static struct omap2_hsmmc_info am335x_mmc[] __initdata = ...

  8. JDBC 查询的三大参数 setFetchSize prepareStatement(String sql, int resultSetType, int resultSetConcur)

    JDBC 查询的三大参数 本文转载至 http://blog.csdn.net/turkeyzhou/article/details/5115228 DBC1.0 .JDBC2.0 .JDBC3.0  ...

  9. 利用Nginx搭建RTMP视频直播,点播服务器,ffmpeg推流,回看

        一.环境和工具 ubuntu 14.04 desktop 不用server的原因是一部分的演示用到了linux视频播放和直播软件,自己还要装桌面,麻烦. 不建议使用 最新的16TLS,我一开始 ...

  10. archdexls主题设置每页显示游戏数目

    archdexls主题,沒调整前,每页显示10个,这显然不够,尤其在搜狗浏览器上,由于这个主题只有触发下拉滚动条,才会自动在同一页面显示下一页,因此只显示10个甚至不能触发显示下一页这个动作. 原来设 ...