SerletConfig对象 SerlerContext域对象 reponse request
作者:互联网
init(ServletConfig config)
ServletConfig 对象获取Servlet标签里的数据
SerlerContext对象:
SerlerContext对象 什么时候被创建:
1.开启服务器加载该项目时
SerlerContext对象 什么时候被销毁:
1.服务器关闭时
2.该项目从服务器上Remove时
如何调用SerlerContext对象 :
1继承HttpServlet接口后里面有个方法getServletContext();返回值就是 SerlerContext对象
ServletContext对象 的作用:(可以获得web应用任何资源的绝对路径)
String path = context.getRealPath(相对于该web应用的相对地址);
getRealpath(写相对路径):返回绝对路径
SerlerContext域对象
setArribute(String name,Object obj);
getAttribute(String name)
removeAttribute(String name);
SerlerContext域对象就两个作用
1.获取绝对路径
2.向域里存值
(=========reponse对象========)
reponse对象中的方法
1)ServletOutputStream getOutputStream()
获得字节流
2)告知浏览器文件的类型:response.setContentType(文件的MIME类型);
3)告示浏览器文件的打开方式是下载:
response.setHeader("Content-Disposition","attachment;filename=文件名称");
(===相应行====)
setStatus():设置状态码(响应行)
(===响应头=====)
setHeader("Refresh(定时刷新头)","5;url=https://www.baidu.com");设置定时刷新头(响应头)
(------重定向需要-------):(1地址栏发生变化2,请求服务器两次)(不带参数 )
1.状态码 reponse.setStatus(302);
2响应头 :response.setHeader("location", "/WEB03/Servlet02xl");
3.sendRedirect("/WEB03/Servlet“);这个方法中上面两个方法,只写这个就可以
(------请求转发-------)(1.地址栏不发生变化2客户端请求服务器1次(服务器内部跳转))(带参数)
RequestDispatcher getRequestDispatcher(String path).forward(request, response);
(===响应体======)
解决服务器向客户端输出中文会乱码的问题
1.服务器向客户端写入中文时,是先向response缓冲区中写但是(response缓冲区的编码时iso8859-1(拉丁))所以
要先解决缓冲区的编码 ,2然后因为我们都是中文系统,所以客户端浏览器的默认编码是GBK,所以然后在设置浏览器编码
通过 response的setCharacterEncoding(String charset) 设置response的编码
response.setContentType("text/html;charset=UTF-8");设置浏览器的编码 这个方法内含 setCharacterEncoding的功能,所以在实际开发中只要编写 response.setContentType("text/html;charset=UTF-8");
(========request对象========)
request对象的方法
(----------获取请求行-------)
String getMethod();获取请求方式
String getRequestURI():获取请求地址URI
String RequestURL()获取请求地址URL
getContextPath():获取项目名
String getQueryString()如果是get则获取url地址后面的参数字符串
String getRemoteAddr() :获取客户端的ip地址
(----------获取请求头--------)
getHeader(”referer"):方法获取请求头(referer:头浏览器通知服务器,当前请求来自何处。如果是直接访问,则不会有这个头。常用于:防盗链)
getHeader("User-Agent"):(User-Agent 浏览器通知服务器,客户端浏览器与操作系统相关信息)
(------获取请求体-------)
String getParameter(string):获取请求参数(不重复单个 密码,用户名)
String[] getParameterValues("String"):获取请求参数数组(爱好)
(-------解决post请求中问乱码问题)客户端向服务器提交中文
setCharacterEncoding(“UTF-8”);
生成36位数字字母不重复组合
String UUID.randomUUID();
标签:String,获取,request,reponse,SerlerContext,服务器,response,请求 来源: https://www.cnblogs.com/xkyy/p/14014519.html