标签:response attr 响应 信息 dog 过滤器 资源 com 之一
servlet是javaEE的规范之一,就是一个接口;是javaweb三大组件(servlet程序、Filter过滤器,Listener监听器)之一;它可以接受客户端上发来的请求,并响应数据给客户端
实现servlet程序的步骤
1,src包下,编写一个类去实现servlet接口
2,实现servlet方法,处理请求,响应数据
3,到web.xml中配置servlet程序的访问地址
注意,访问地址一定要加上斜杠
=====================================
servlet程序生命周期
1,构造器方法
2,init方法初始化
第1,2步是在第一次访问的时候被执行了
3,service方法
第3步每次访问都会调用,比如刷新网页
4,destroy销毁方法
第4步web工程停止时才会执行
===============================================
因为请求有get和post两种方式
所以在实现servlet的类中的构造器中要获取请求方式
=============================================================
在开发中的操作,更多的是继承httpservlet接口,用工具类去实现:
===============================================================
servlet的一些实现类
=======================================================
servletconfig类,是servlet的配置信息类
1,获取servlet程序的别名既servlet-name
System.out.println(getServletConfig().getServletName());
2,获取初始化参数init-parm
在web.xml中自己配置初始化值
getServletConfig().getInitParameter("username);
通过这个方法,用参数名username获得参数值root
3,获取servletcontext对象
getServletConfig().getServletContext();
===================================================
servlet程序和sernletconfig对象都是有tomcat负责创建。
=======================================================
如果重写init方法,一定要写上super.init(config)
============================================
servletcontext是一个借口,表示servlet上下文对象
一个web工程只有一个servletcontext对象实例,只有在工程停止时里面的数据才会销毁。
servletcontext对象是一个域对象(是可以像map一样存取数据的对象,域指的是存取数据的操作范围)
四个作用:
1,获取web.xml中额配置的上下文参数context-param。
ServletContext context = getServletConfig().getServletContext();
String username = context.getInitParameter("username");
2,获取当前的工程路径,格式:/工程名
context.getContextPath();
3,获取工程部署后在服务器磁盘上的绝对路径
context.getRealPath("/");
4,像map一样存储数据
ServletContext servletContext = getServletContext();
servletContext.setAttribute("key1","user112");
System.out.println(servletContext.getAttribute("key1"));
================================================================
Http协议:就是客户端和服务器之间通信时,发送的数据,需要遵循的规则。数据也叫报文。
====================================================================
=========================================================
=======================================================
HttpServletRequest类
每次只要有请求进入tomcat服务器,tomcat服务器就会把请求过来的http协议信息解析好封装到Request对象中。然后传到service方法(doGet和doPost)中给我们使用。我们就可以通过HttpServletRequest对象,获取所有请求的内容。
常用方法:
===================
获取请求参数:
===========================================
请求转发:
服务器收到请求后,从一个资源跳转到另一个资源的操作。
比如servlet1和servlet2两个文件。
在servlet1中
在servlet2中:
=============================
base标签
=========================
javaweb中,路径分相对路径和绝对路径
相对路径:
. 表示当前目录
.. 表示上一级目录
绝对路径:
http://ip:port/工程路径/资源名
==============================
/斜杠的不同意义:
=========================
HttpServletResponse类和HttpServletRequest类一样。
每次请求进来,tomcat服务器都会创建一个Response对象,传递给servlet程序使用。
HttpServletRequest表示请求的信息,HttpServletResponse表示响应的信息。
需要返回给客户端的信息,都可以用HttpServletResponse对象设置。
返回给客户的信息需要用两个输出流:
给客户端传输一段字符:
设置服务器字符集和游览器字符集:
还有一个更好用的API:
=================================
请求重定向:
在response1中:
在response2中:
==========
第二种请求重定向方法(推荐使用):
在reponse1中写一句代码代替上面的两句代码,不用再设置302了
标签:response attr 响应 信息 dog 过滤器 资源 com 之一
原文地址:https://www.cnblogs.com/jmfy/p/14588567.html