当前位置: 首页 > news >正文

旅游网站建设的结论长沙正规竞价优化推荐

旅游网站建设的结论,长沙正规竞价优化推荐,培训机构seo,幸运28网站代理怎么做一、概念 request对象和response对象是通过Servlet容器#xff08;如Tomcat#xff09;自动创建并传递给Servlet的。 Servlet容器负责接收客户端的请求#xff0c;并将请求信息封装到request对象中#xff0c;然后将request对象传 递给相应的Servlet进行处理。类似地如Tomcat自动创建并传递给Servlet的。 Servlet容器负责接收客户端的请求并将请求信息封装到request对象中然后将request对象传 递给相应的Servlet进行处理。类似地Servlet容器会创建一个response对象并将其传递给 Servlet用于生成响应并发送给客户端。 总的来说request对象是来获取请求消息response对象是来设置响应消息 二、Request 在Servlet的service()方法被调用时Servlet容器会创建一个包含请求信息的HttpServletRequest对象并将其作为参数传递给Servlet的service()方法。类似地Servlet容器还会创建一个HttpServletResponse对象并将其作为参数传递给Servlet的service()方法。 1、Request功能 1获取请求行数据 请求行的数据有请求方式  请求url 请求协议/协议版本号 ①获取请求方式getMethod() ②获取虚拟目录getContextPath() ③获取servlet路径getServletPath() ④获取get方式请求参数getQueryString() ⑤获取请求URI统一资源定位符getRequestURI() 统一资源标识符getRequestURL() ⑥获取协议及版本 getProtocol() ⑦获取客户机的IP地址getRemoteAddr() 代码示例 WebServlet(/requestDemo1) public class RequestDemo1 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//1获取请求方式String methodrequest.getMethod();System.out.println(method);//2获取虚拟目录String contextPath request.getContextPath();System.out.println(contextPath);//3获取servlet路径String servletPath request.getServletPath();System.out.println(servletPath);//4获取请求参数String queryString request.getQueryString();System.out.println(queryString);//5获取请求URIString requestURI request.getRequestURI();System.out.println(requestURI);StringBuffer requestURL request.getRequestURL();System.out.println(requestURL);//6获取请求协议及版本号String protocol request.getProtocol();System.out.println(protocol);//7获取客户机的ip地址String remoteAddr request.getRemoteAddr();System.out.println(remoteAddr);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {} }2获取请求头数据 方法getHeader(String name):通过请求头的名称获取请求头的值 getHeaderNames():获取所有的请求头名称 WebServlet(/requestDemo2) public class RequestDemo2 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//演示获取请求头数据//获取所以请求头数据EnumerationString headerNames request.getHeaderNames();//遍历while(headerNames.hasMoreElements()){String s headerNames.nextElement();//根据名称获取请求头的值String header request.getHeader(s);System.out.println(s......header);}//演示获取请求头数据:user-AgentString header request.getHeader(user-agent);//判断agent的浏览器版本System.out.println(header);} 3获取请求体数据 只有post请求有请求体 步骤①获取流对象                      BufferedReader getReader()获取字符输入流只能操作字符数据                     ServletInputStream getInputStream()获取字节输入流可以操作所有类型数据 ② 再从流对象中拿数据 Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取请求消息体--请求参数//1、获取字符流BufferedReader reader request.getReader();//2、读取数据String linenull;while((linereader.readLine())!null){System.out.println(line);}System.out.println(-------------------------------------);} 2、其他功能 1获取请求参数不区分post和get方法 ①根据参数名称获取参数值getParameter(String name) ②根据参数名称获取参数值数组getParameterValues(String name) ③获取所有请求的参数名称getParameterNames() ④获取所有参数的map集合getParameterMap() WebServlet(/requestDemo4) public class RequestDemo4 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//解决中文乱码问题request.setCharacterEncoding(utf-8);//根据请求参数的名称获取请求参数值String username request.getParameter(username);System.out.println(username);System.out.println(post);System.out.println();//根据参数名称获取请求参数数组String[] parameterValues request.getParameterValues(hobby);for (String hobby:parameterValues) {System.out.println(hobby);}System.out.println();//根据所以请求参数名称EnumerationString parameterNames request.getParameterNames();while(parameterNames.hasMoreElements()){String s parameterNames.nextElement();System.out.print(s);String parameter request.getParameter(s);System.out.println(parameter);}System.out.println();//获取所以参数的map集合MapString, String[] parameterMap request.getParameterMap();SetString strings parameterMap.keySet();for(String name:strings){String[] strings1 parameterMap.get(name);System.out.print(name);for(String value:strings1){System.out.println(value);}}} }2请求转发 在服务器内部的资源跳转方式 步骤 通过request对象获取请求转发器对象getRequestDispatcher(String path)。 使用RequestDispatcher对象来进行转发forward(ServletRequest request, ServletResponse response) 。 特点 浏览器地址栏不发生改变 只能转发到当前服务器内部资源中 转发是一次请求 3共享数据 域对象一个有作用范围的对象可以在范围内共享数据          request域代表一次请求的范围一般用于请求转发的多个资源中共享数据          方法                 ①setAttribute(String name,Object obj):存储数据                 ②getAttitude(String name):通过键获取值                 ③ void removeAttribute(String name):通过键移除键值对           注意这个放于forward方法的上面不然响应太快会导致无法获取信息 代码示例 WebServlet(/requestDemo5) public class RequestDemo5 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println(demo5被访问了);request.setAttribute(ttt,hhhh);//转发到demo6request.getRequestDispatcher(/requestDemo6).forward(request,response);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {} }WebServlet(/requestDemo6) public class RequestDemo6 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Object ttt request.getAttribute(ttt);System.out.println(ttt);System.out.println(demo6被访问了);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {} } 4获取ServletContext对象 getServletContext() 三、Response response设置响应消息 1、设置响应行方法 1设置响应行状态码方法setStatus 2设置响应头setHeaderString nameString value 3设置响应体 使用步骤 ①获取输出流                                   字符输出流PrintWriter getWriter() 字节输出流ServletOutputStream getOutputStream() ② 使用输出流将数据输出到客户端浏览器 2、重定向 一种资源跳转的方式 1方法sendRedirect( 2 重定向的特点:redirect             ① 地址栏发生变化             ② 重定向可以访问其他站点(服务器)的资源             ③ 重定向是两次请求。不能使用request对象来共享数据 WebServlet( /responseDemo1) public class responseDemo1 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println(demo1);//设置状态码为302response.setStatus(302);/* //设置响应头locationresponse.setHeader(location,/servlet/responseDemo2);*///获取当前应用程序的上下文路径String contextPath request.getContextPath();//简单的重定向方法response.sendRedirect(contextPath/responseDemo2);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} }WebServlet(/responseDemo2) public class responseDemo2 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println(demo2);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} }3服务器输出字符数据到浏览器 步骤                  获取字符输出流                  输出数据 WebServlet(/responseDemo3) public class responseDemo3 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {/*//获取流对象之前设置流的默认编码ISO-8859-1设置为浏览器默认编码response.setCharacterEncoding(utf-8);//告诉浏览器服务器发送的消息体数据的编码建议浏览器使用改编码解码response.setHeader(content-type,text/html;charsetutf-8);*/response.setContentType(text/html;charsetutf-8);//解决乱码问题//获取字符输出流PrintWriter writer response.getWriter();//输出数据writer.write(牛牛牛);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} } 4服务器输出字节数据到浏览器           步骤                  获取字节输出流                  输出数据 WebServlet(/responseDemo4) public class responseDemo4 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取字节输出流ServletOutputStream outputStream response.getOutputStream();//输出数据outputStream.write(你好.getBytes());}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} } 三、ServletContext对象 1、概念 ServletContext 实例代表了整个 Web 应用程序的上下文环境可以在整个应用程序中访问和共享可以和服务器来通信。 2、获取 方式一 通过request对象获取request.getServletContext(); 方式二 通过HttpServlet获取this.getServletContext(); 3、功能 1获取MIME类 MIME类型:在互联网通信过程中定义的一种文件数据类型              格式 大类型/小类型   text/html        image/jpeg 获取方法getMimeType(String file)   代码示例 WebServlet(/ContextDemo1) public class ContextDemo1 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取Context对象的方式// ServletContext servletContext request.getServletContext();ServletContext servletContext1 this.getServletContext();//定义文件名称String filenamea.jpg;//获取MIME类型String mimeType servletContext1.getMimeType(filename);System.out.println(mimeType );}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} }2域对象共享数据 ① setAttribute(String name,Object value)         ② getAttribute(String name)         ③removeAttribute(String name) ServletContext对象范围所有用户所有请求的数据 WebServlet(name ContextDemo2, value /ContextDemo2) public class ContextDemo2 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {ServletContext servletContext1 this.getServletContext();servletContext1.setAttribute(n,hello);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} }WebServlet(name ContextDemo2, value /ContextDemo2) public class ContextDemo3 extends HttpServlet {Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {ServletContext servletContext1 this.getServletContext();Object n servletContext1.getAttribute(n);System.out.println(n);}Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request,response);} } 3 获取文件的真实(服务器)路径 方法String getRealPath(String path)
http://www.zqtcl.cn/news/68268/

相关文章:

  • 电脑网站拒绝连接怎么解决紫金建设公司官网
  • 网站开发专业怎么样郑州做网站要
  • 网站制作公司网址论坛网站制作
  • 网站建设区域加盟给公司做门户网站多少钱
  • 找人做自建房图纸去哪个网站网站建设企业济南
  • 重庆营销网站建设公司排名把自己的网站卖给别人后对方做违法吗
  • 长春专业网站建设网站域名 空间申请
  • 先做网站装修还是先买虚拟主机建设公司网站意义
  • 千博网站管理系统安装com域名怎么备案
  • asp自助建站系统重庆seo网站哪家好
  • 网站建设基础滁州建设厅网站
  • 百度建立网站深圳网站建设送域名
  • tp5企业网站开发百度云成都网站建设 培训
  • 手机网站如何生成appphp网站开发文章管理系统
  • 简单网站设计模板手机快速注册
  • 网站运行费用预算山西网络营销
  • 东阳网站建设哪家好个人现在可以做哪些网站
  • 如何取消网站备案号yes风淘宝网站
  • 南山网站制作高端大气网站案例
  • 西宁招聘网站开发wordpress安装文件是哪个
  • 老域名网站不收录网络维护员岗位职责
  • 在线做名片做海报网站宿州医疗网站建设
  • 建设网站300多块钱广州网站营销推广设计
  • 有免费网站服务器吗药品网络营销公司
  • 响应式网站能用dw做吗千牛cdn wordpress
  • 官方网站建设思路网站网络服务器是什么情况
  • 四川省建设领域信用系统网站昆明制作企业网站
  • 宁波网站建设哪家好私域流量营销
  • 广州网站推广平台pc网站怎么建设流程
  • 织梦网站上传及安装湖南常德属于哪个市