2019-06-05

一、idea与Tomcat配置

1、新建工程

新建工程,选择Web工程。

image.png

2、配置Tomcat

配置本地Tomcat服务,在Application server中选择Tomcat的安装位置。

image.png

3、配置编译输出的class文件位置

将编译后的class文件导出至WEB-INF中的classes文件夹。


image.png

4、启动服务

点击按钮启动服务。


image.png

如果页面显示如下,证明启动成功。


image.png

二、servlet基础

1、servlet概述

servlet主要处理客户端传来的HTTP请求,并返回一个响应。主要有doGET、doPost方法等。

2、servlet生命周期

servlet生命周期主要分为3个阶段,初始化阶段、运行阶段、销毁阶段。

初始阶段

客户端向servlet发起HTTP请求时,servlet会检查内存中是否存在servlet对象。若存在直接使用。若不存在,则调用init()方法进行实例化。init()方法只会调用一次。

运行阶段

在运行阶段,servlet会回调service()方法,通过servletRequest对象获取客户端的信息,并通过servletResponse对象进行响应。

servlet的每次访问请求,都会回调service()方法,这意味着service方法会被调用多次。

销毁阶段

当服务器关闭或web应用移除servlet容器时,会调用销毁方法destory()。

如果希望在tomcat启动时,servlet也跟着启动,可在web.xml中的相关servlet配置中加入如下语句。

<load-on-startup>1</load-on-startup>
值必须为整数,若这个值为正整数或0,则会在应用启动时加载,数值越小,越先被加载。

3、servlet多重映射

同一个servlet可以被映射成多个虚拟路径。主要实现方式有2种。

配置多个servlet-mapping

<servlet-mapping>
<servlet-name>RequestMethodServlet</servlet-name>
<url-pattern>/RequestMethodServlet</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>RequestMethodServlet</servlet-name>
<url-pattern>/RequestMethodServlet1</url-pattern>
</servlet-mapping>
在一个servlet-mapping配置多个url-pattern

<servlet-mapping>
<servlet-name>RequestMethodServlet</servlet-name>
<url-pattern>/RequestMethodServlet</url-pattern>
<url-pattern>/RequestMethodServlet1</url-pattern>
</servlet-mapping>

4、servletConfig接口

用于在servlet中声明一些辅助信息。

具体用法:

在web.xml中声明参数

<init-param>
<param-name>city</param-name>
<param-value>beijing</param-value>
</init-param>
在servlet中获取数据

ServletConfig servletConfig = getServletConfig();
String city = servletConfig.getInitParameter("city");
resp.getWriter().println("city: " + city);

5、servletContext接口

在servlet启动后,系统会为当前web应用创建一个唯一的servletContext对象。

具体用法:

在web.xml中声明参数

<context-param>
<param-name>city</param-name>
<param-value>hangzhou</param-value>
</context-param>
在servlet中获取数据

ServletContext servletContext = getServletContext();
String city = servletContext.getInitParameter("city");
resp.getWriter().println("city = " + city);

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Http协议 HTTP协议:超文本传输协议(HTTP,HyperText Transfer Protocol)...
    圣贤与无赖阅读 1,270评论 0 13
  • Servlet学习的大纲 servlet概念及相关接口简介 servet 执行过程 servlet映射路径 缺省s...
    奋斗的老王阅读 1,228评论 1 51
  • 本文包括: Servlet简介关于Servlet的一些类 Servlet生命周期 ServletConfig获得初...
    廖少少阅读 3,931评论 1 67
  • XML和Servlet 当今广泛使用的标记语言是超文本语言HTML和可扩展标记语言XML,标记语言广泛应用于网页和...
    1fa38a6a3bcf阅读 239评论 0 0
  • 我亲手把自己附加在他身上的爱情的光环扯下来,也许会失去一些爱情的甜蜜,但换来更多清醒的自由。
    SmileFx阅读 114评论 0 0