web服务器

1)        什么是web服务器

硬件:性能强大的计算机(无显示屏)

操作系统: linux

软件:web服务器软件(将数据放置在服务器上就可以被外部访问)

web应用程序

2)        web服务器软件

a)         IIS:Microsoft公司

b)         weblogic: oracle公司,支持动态web开发的技术13种,jsp/servlet

c)         apache:

d)         tomcat:apache ,开源免费,jsp/servlet两种技术

e)         Nginx:分布式

3)        tomcat

开源免费的web服务器

下载:

Tomcat.apache.org

8.5

zip:window压缩包

tar.gz:linux压缩包

install:安装版

4)        目录

5)        服务器的启动以及访问

a)         先配置JAVA_HOME(JDK环境)

b)         启动服务器

…\apache-tomcat-8.5.23\bin

双击:startup.bat

dos:startup

c)         http://localhost:8080

localhost:本机(ip)  127.0.0.1

主机映射(localhost ---  127.0.0.1)

windows:

C:\Windows\System32\drivers\etc\hosts

linux:

      /etc/hosts

8080:端口    tomcat默认端口

修改端口:  confàserver.xml

<Connector port="" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

d)         放程序到服务器在外部访问

A.       开发好web应用程序

B.       将其放置到webapps目录下

e)         自动部署(eclipse +  tomcat)

web应用程序

1)        程序的创建

2)        web应用程序的目录

xml

1)        可扩展标记语言

2)        语法规范

a)         声明

b)         有且只有一个根标签

c)         标签必须成对存在

d)         属性使用双引号

e)         大小写敏感

3)        作用

a)         存储数据: 配置文件

b)         数据交换格式 (webservice)

4)        解析xml文件

dom

sax

dom4j

5)        xml约束(描述)

dtd:   dtd描述整篇xml文档    .dtd

schema:        .xsd

servlet

运行于服务器端应用程序。

获取客户端的数据。

实现servlet接口。

响应html数据给客户端。

1)        创建第一个servlet程序

1.    创建类实现servlet接口
2. 配置访问路径 web.xml
<!-- 配置servlet -->
<servlet>
<!-- servlet的名称 -->
<servlet-name>hello</servlet-name>
<!-- 全限定名称 -->
<servlet-class>action.HelloServlet</servlet-class>
</servlet>
<!-- 映射:路径和servlet之间的映射关系 -->
<servlet-mapping>
<servlet-name>hello</servlet-name>
<!--路径的匹配规则
/*:匹配所有的路径
*.do:匹配所有以.do结尾请求
/abc/*:匹配所有路径中包含abc的请求
/abc:匹配路径为abc的请求
-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
3. 通过客户端进行访问

2)        servlet的执行流程

a)         servlet对象创建时机?

默认:获取请求时创建

<load-on-startup>:正数,跟随服务器一起加载

b)         servlet的执行流程

客户端发出请求,读取web.xml配置文件,根据路径进行servlet的匹配,如果找到就根据全限定名称创建servlet对象,同时创建request和response对象,将其作为参数参数service方法,调用该方法。

3)        servlet生命周期

a)         实例化:servlet对象的创建   一次

b)         init:初始化,数据准备(编码,配置信息),一旦对象创建就立即执行  执行一次

c)         service:处理请求和返回响应的方法。每发出一次请求就调用一次

d)         destroy:销毁,执行一次,当应用程序被移除或者服务器关闭时。

4)        servlet的创建

a)         实现servlet接口

b)         继承GenericServlet抽象类(通用协议的servlet)

c)         继承HttpServlet抽象类(基于http协议的servlet)

5)        使用注解实现servlet的开发

@WebServlet("/hello")

Day7 Tomcat和servlet的更多相关文章

  1. tomcat jdk servlet websocket版本对应关系

    最近在考虑公司主要基础三方库版本统一和升级的问题,特看了下tomcat jdk servlet websocket版本的对应关系,如下:

  2. web服务器、tomcat、servlet是什么?它们之间的关系又是什么?

    今天偶然看到常见web服务器的介绍有Apache HTTP server.Nginx.Microsoft IIS.GWS,心中不禁产生了疑问,这些都是什么呢?一直认为tomcat就是web服务器,以下 ...

  3. WEB服务器,TOMCAT和servlet之间的关系

    WEB服务器,TOMCAT和servlet之间的关系 什么是WEB服务器Web服务器是指能够为发出请求的浏览器提供文档的程序.服务器是 一种被动程序,只有浏览器发出请求的时候才会响应.应用层使用 的是 ...

  4. 浅谈Tomcat和Servlet

    本文浅谈下对Tomcat和Servlet总体的理解,初学时有用过一段时间,但当时疲于应对如何xml配置和使用,对他们的理解就像是一个黑匣子.现在回顾一下帮助自己加深网络的理解.开始还是先推荐我看的文章 ...

  5. 【tomcat】servlet原理及其生命周期

    1.什么是servlet? Servlet(Servlet Applet),全称Java Servlet,是用Java编写的服务器端程序.而这些Servlet都要实现Servlet这个接口.其主要功能 ...

  6. tomcat和servlet的关系

    一.什么是servlet? 处理请求和发送响应的过程是由一种叫做Servlet的程序来完成的,并且Servlet是为了解决实现动态页面而衍生的东西.理解这个的前提是了解一些http协议的东西,并且知道 ...

  7. tomcat(5)servlet容器

    [0]README 0.0)本文部分文字描写叙述转自:"深入剖析tomcat",旨在学习 tomcat(5)servlet容器 的基础知识. 0.1)intro to servle ...

  8. Tomcat和Servlet

    Tomcat Tomcat是什么,Tomcat是目前市场上主流Web服务器之一,是用Java语言开发的项目.Tomcat支持Servlet和JSP的规范,它由一组嵌套的层次和组件组成.结构如下图 所有 ...

  9. 【转】tomcat与apache,tomcat与servlet的区别

    tomcat与apache的区别:(转自:http://blog.csdn.net/longzs/article/details/10959945) 1.apache支持静态页,tomcat支持动态的 ...

随机推荐

  1. java 将页面指定区域截图并上传到服务器

    controller层: /** * 上传获取到的收据图片 * @param request * @param data 获取到的图片 * @return */ @RequestMapping(val ...

  2. 区分IE8/IE7/IE6及其他浏览器-CSS “\9″

    区分IE8/IE7/IE6及其他浏览器-CSS “\9″ 原创文章,转载请注明来自张鑫旭-鑫空间-鑫生活[http://www.zhangxinxu.com] by zhangxinxu from h ...

  3. [清华集训]Rmq Problem / mex

    题目链接 我们离线处理这些询问 在右端点所在的位置用vector来push_back询问 维护每个数值最后出现的位置p[x] 从左往右扫,边走边回答询问 对于每个询问我们回答第一个p[x]<l的 ...

  4. bzoj P4825 [Hnoi2017]单旋——solution

    Description H 国是一个热爱写代码的国家,那里的人们很小去学校学习写各种各样的数据结构.伸展树(splay)是一种数据 结构,因为代码好写,功能多,效率高,掌握这种数据结构成为了 H 国的 ...

  5. 用jquery实现带左右按键的轮播图

    成品如下: 简单来说就是点击“右”按钮时,转换到右边的下一幅图片,同时上面的小方块颜色也跟着改变,如果已经是最后一幅图片,再点击“右”,则转换到第一幅图片,是直接向左移找到第一幅图的,明天再做一下无缝 ...

  6. elixir 表单 map

    键-值对 iex(13)> map = %{:a => 1, 2 => :b}%{2 => :b, :a => 1}iex(14)> map[:a]1iex(15) ...

  7. python实现字符串中的半全角转换

    全角和半角的空格的Unicode值相差12256 除空格外的全角和半角的Unicode值相差65248 # -*- coding: utf-8 -*- def strQ2B(ustring): &qu ...

  8. 在虚拟机中安装ubuntu16.04后不能全屏显示

    一.在终端输入:xrandr 二.输入:xrandr -s 1920x1440 参考网站:https://blog.csdn.net/qq_33202928/article/details/75021 ...

  9. 转载:http://www.cnblogs.com/double-K/p/6926367.html

    sql专家感悟:不可说的感悟-——十年老技术转型(一) http://www.cnblogs.com/double-K/p/6926367.html

  10. LeetCode 题解之Plus One

    1.题目描述 2.题目分析 从后向前做加法,等于10则进位,否则直接加1 ,返回 digits; 3.代码 vector<int> plusOne(vector<int>&am ...