JavaWeb_7-Tomcat和Servlet

Posted TheSkyCloud

tags:

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

Tomcat

安装运行:

1 官网下载tomcat

2 直接解压

3 在bin目录下双击startup.bat

4 测试


测试端口号:

1 http://localhost:8080

2 http://127.0.0.1:8080


遇到的问题:

1 jar包问题,安装目录不包含bin目录

2 JAVA_HOME大写



Servlet:

1 是javaEE规范之一。规范就是接口。

2 是JavaWeb三大组件之一。三大组件分别是servlet程序、filter过滤器、listener监听器

3 是运行在服务器上的一个Java小程序,可以接收客户端发送过来的请求,并响应数据给客户端


手动实现Servlet程序:

1 编写一个类实现servlet接口

2 实现service方法,处理请求,并相应数据


配置Servlet程序:

servlet-name标签:给servlet程序器起别名

servlet-class标签:全类名

url-pattern标签:可以自定义,/+自定义命名


Servlet生命周期:

1 servlet构造器

2 执行init初始化方法

3 执行servlet方法,直到destroy销毁

4 执行destroy方法


查看get\post请求:

获取ServletRequest子接口,有getMethod方法,进行类型转换:

HttpServletRequest httpServletRequest = (HttpServletRequest)ServletRequest;

String method = httpServletRequest .getMethod();


通过继承HttpServlet实现Servlet程序:

1 编写一个类继承类

2 根据业务需要重写doGet 或 doPost方法


ServletConfig类:

1 通过Servlet-name的name值查找value值

ServletConfig.getServletName()

2 初始化参数

ServletConfig.getInitParamerter()

3 获取ServletContext对象

ServletConfig.getServletContext()


ServletConfig类:

1 servlet程序和servletConfig对象都是Tomcat负责创建,我们负责使用

2 servlet程序默认是第一次访问时候创建,servletConfig是每一个servlet程序创建时,创建一个对应的servletConfig对象。


ServletContext类:

1 表示servlet的上下文对象

2 一个web工程,只有一个ServletContext对象实例

3 ServletContext对象是一个域对象

4 ServletContext是在web工程部署启动时创建,在web工程停止时销毁


域对象:

指可以像Map一样存取数据的对象,叫域对象。这里的域指的是存取数据的操作范围。


ServletContext的四个作用:

1 获取web.xml中配置的上下文参数context-param


ServletContext context = getServletConfig().getServletContext();

String username = context.getInitParameter("username");

String password = context.getInitParameter("password")


2 获取当前的工程路径,格式:/工程路径


context.getContextPath();


3 获取工程部署后在服务器硬盘上的绝对路径


context.getRealPath("/");


4 像Map一样存取数据


ServletContext context = getServletContext();

context.setAttribute("key1","value1");



<!--  context-param是上下文参数,类似于全局变量,属于整个web工程-->


HTTP协议:

请求:客户端给服务器发送数据请求

响应:服务器给客户端回传数据


get请求:

1 请求行

1 请求方式   get

2 请求资源路径[+?+请求参数]

3 请求协议版本号:HTTP/1.1

2 请求头

key value

3 请求体


post请求:

1 请求行

1 请求方式   post

2 请求资源路径[+?+请求参数]

3 请求协议版本号:HTTP/1.1

2 请求头

key value

空行

3 请求体 

发送给服务器的数据


HttpServletRequest:

每次有请求进入Tomcat服务器,服务器就会被请求过来的THTTP协议信息解析好封装到Request对象中,

然后传递service方法,调用doGet和doPost方法可以使用,

我们通过HttpServletRequest对象,获取所有的请求信息


HttpServletRequest类的常用方法:

1 getRequestURI()   获取请求资源路径

2 getRequestURL()   获取请求统一资源定位符(绝对路径)

4 getparameter()   获取请求的参数

5 getParameterValues()-----Arrays.asLIst()

6 getMethod()  

7 setAttribute()  设置域数据

8 getAttribute(key)  获取域数据

9 getRequestDispatcher  获取请求转发对象

10 getHeader()




以上是关于JavaWeb_7-Tomcat和Servlet的主要内容,如果未能解决你的问题,请参考以下文章

myecplise tomcat jdk

在CentOS7上安装和配置Java和Tomcat环境

在CentOS7上安装和配置Java和Tomcat环境

在CentOS7上安装和配置Java和Tomcat环境

JDK1.7+Tomcat7+Eclipse+XFire开发WebService

Servlets/Undertow - 访问 HttpServletRequest 和 HttpServletResponse