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

做网站哪里比较好常用网站名称大全

做网站哪里比较好,常用网站名称大全,怎么创建小程序商店,saas系统的优缺点系列文章目录 1、JavaWeb基础专项复习1——XML文件-CSDN博客 2、JavaWeb基础专项复习2——JSP文件-CSDN博客 3、JavaWeb基础专项复习2——Servlet相关知识-CSDN博客 4、JavaWeb基础专项复习4——会话对象Session and Cookie-CSDN博客 文章目录 系列文章目录文章目录1、Tom…系列文章目录 1、JavaWeb基础专项复习1——XML文件-CSDN博客 2、JavaWeb基础专项复习2——JSP文件-CSDN博客 3、JavaWeb基础专项复习2——Servlet相关知识-CSDN博客 4、JavaWeb基础专项复习4——会话对象Session and Cookie-CSDN博客 文章目录 系列文章目录文章目录1、Tomcat 请求响应机制2、HttpServletRequest 功能2.1 获取请求头数据2.2 获取请求相关其他方法3、HttpServletRequest获取参数3.1 传递参数方式3.2 获取参数方法3.3 中文乱码处理3.3.1 POST 请求3.3.2 GET 请求3.6 HttpServletRequest请求转发3.7 request 作用域4、HttpServletResponse 功能4.1 功能介绍4.2 设置状态码和其他方法4.3 设置响应头信息4.4 中文乱码问题4.5 重定向 1、Tomcat 请求响应机制 Web 服务器接收到客户端的 HTTP 请求后会为每次请求创建request和response对象分别用于获取客户端数据和向客户端输出数据。 2、HttpServletRequest 功能 HttpServletRequest在JavaWeb中非常重要的一个类。它是Servlet的service()方法的参数之一。所以必须要掌握它 request的功能可以分为以下几种 封装了请求头数据封装了请求正文数据如果是GET请求那么就没有正文request是一个域对象可以把它当成Map来添加获取数据做请求的转发一次请求一次数据·重定向两次请求两次数据 2.1 获取请求头数据 通过request.getHeader(请求头名称)获取指定请求头数据 request.getHeaderNames()可获取所有请求头名称。 response.setContentType(text/html;charsetutf-8); Enumeration names request.getHeaderNames(); while(names.hasMoreElements()) {String name (String)names.nextElement();String value request.getHeader(name);System.out.println(name : value);response.getWriter().println(name : value br/); }2.2 获取请求相关其他方法 涵盖获取请求正文字节数、请求类型、请求方法、客户端 IP 地址等众多方法还能操作请求 URL 各部分信息。 int getContentLength()获取请求正文的字节数GET请求没有正文没有正文返回-1 String getContentType()获取请求类型如果请求是GET那么这个方法返回null如果是POST请求那么默认为application/x-www-form-urlencoded理解为字符串类型其它类型以后再学String getMethod()返回请求方法例如GET post delete put Locale getLocale()返回当前客户端浏览器支持的Locale。java.util.Locale表示国家和言语这个东西在国际化中很有用String getCharacterEncoding()获取请求编码如果没有setCharacterEncoding()那么返回null。表示使用ISO-8859-1编码GBK UTF-8void setCharacterEncoding(String code)设置请求编码只对正文有效注意对于GET而言没有正文所以此方法只能对POST请求中的参数有效http://localhost:8080/hello/oneServlet?namezhangSanString getContextPath()返回上下文路径例如/项目名称String getQueryString()返回请求URL中的参数例如namezhangSanString getRequestURI()返回请求URI路径例如/hello/oneServletStringBuffer getRequestURL()返回请求URL路径例如http://localhost/hello/oneServlet即返回除了参数以外的路径信息String getServletPath()返回Servlet路径例如/oneServletString getRemoteAddr()返回当前客户端的IP地址String getRemoteHost()返回当前客户端的主机名但这个方法的实现还是获取IP地址int getRemotePort()返回客户端的端口号每次请求都会变String getSchema()返回请求协议例如httpString getServerName()返回主机名例如localhostint getServerPort()返回服务器端口号例如80 3、HttpServletRequest获取参数 3.1 传递参数方式 GET 和 POSTGET 可在地址栏、超链接、表单中传递参数POST 主要在表单中传递。 GET 地址栏中直接给出参数http://localhost/param/ParamServlet?p1v1p2v2超链接中给出参数 a href” http://localhost/param/ParamServlet?p1v1p2v2”点一下/a 表单中给出参数form method”GET” action”ParamServlet”…/formAjax POST 表单中给出参数form method”POST” action”ParamServlet”…/formAjax 3.2 获取参数方法 String getParameter(String name)获取单值参数String[] getParameterValues(String name)获取多值参数如复选框Enumeration getParameterNames()获取所有参数名Map getParameterMap()获取所有参数的 Map 集合。 单值参数接收示例 前台接收 form actionParamServlet methodpostinput typetext namep1/br/input typetext namep2/br/input typesubmit value提交/br/ /form a hrefParamServlet?p1v1p2v2Param/a 后台接收 String s1 request.getParameter(p1); String s2 request.getParameter(p2); response.getWriter().print(p1 s1 br/); response.getWriter().print(p2 s2 br/); Enumeration names request.getParameterNames(); while(names.hasMoreElements()) {String name (String)names.nextElement();String value request.getParameter(name);System.out.println(name value); }MapString, String[] map request.getParameterMap(); SetString keySet map.keySet(); for(String key : keySet){String[] vals map.get(key);System.out.print(key :);System.out.println(key : Arrays.toString(vals));System.out.println(); }多值参数接收 多值参数主要就是多选checkbox 例如在注册表单中如果让用户填写爱好那么爱好可能就是多个。那么hobby参数就会对应多个值 前台接收 form actionParamServlet methodpost上网input typecheckbox namehobby valuenetplay /br/踢球input typecheckbox namehobby valuefootball /br/看书input typecheckbox namehobby valueread /br/编程input typecheckbox namehobby valueprogramme /br/input typesubmit value提交/br/ /form后台接收 String[] hobbies request.getParameterValues(hobby); System.out.println(Arrays.toString(hobbies));MapString, String[] map request.getParameterMap(); SetString keySet map.keySet(); for(String key : keySet){String[] vals map.get(key);System.out.println(key : Arrays.toString(vals)); }3.3 中文乱码处理 3.3.1 POST 请求 我们知道请求信息中只有POST存在正文所谓POST参数编码就是就是请求正文的编码。默认情况下使用getParameter()获取POST请求参数时使用的是ISO-8859-1编码。 方法一针对字符串本身进行手动转码 String name request.getParameter(name); name new String(name.getBytes(ISO-8859-1),UTF-8); System.out.println(name:name);方法二在获取参数前使用request.setCharacterEncoding(UTF-8)设置编码。 request.setCharacterEncoding(UTF-8); String name request.getParameter(name); System.out.println(name:name);对于每个请求只需要调用request的setCharacterEncodng()一次然后所有getParameter()都会使用这个编码来解读参数。但要注意只对请求正文有效即POST参数。 该方法 必须放在获取参数值之前 3.3.2 GET 请求 方法一对字符串单独解码 String name request.getParameter(name); name new String(name.getBytes(ISO-8859-1),UTF-8); System.out.println(name:name);方法二在 Tomcat 的server.xml中配置URIEncodingUTF-8但 Tomcat8.5 及以上版本无需设置即可支持 URL 传递中文。不建议使用get请求传递中文参数 Connector port8080 protocolHTTP/1.1connectionTimeout20000redirectPort8443 URIEncodingUTF-8/3.6 HttpServletRequest请求转发 用于在 Servlet 中执行后台业务逻辑后跳转页面地址栏不变可跳转到静态页面或 Servlet还能在请求域内设置和获取属性值。 request.getRequestDispatcher(/success.html).forward(request, response); 此时我们可以给request来设置当前域中的属性值在该域之内当前请求完成之前都能获得到该属性值。 request.setAttribute(name, txjava); request.getAttribute(name);3.7 request 作用域 范围是一次请求响应内每个线程请求会新生成HttpServletRequest和HttpServletResponse对象。 ServletContext ServletContext 代表整个 Web 应用程序的上下文在服务器启动时为每个 Web 应用创建一个 ServletContext 对象所有 Servlet 共享这个对象。它主要用于在整个 Web 应用的不同部分之间共享数据、获取 Web 应用的全局信息等。 HttpSession HttpSession 用于在服务器端跟踪客户端的会话状态。每个客户端访问服务器时服务器会为其创建一个唯一的 HttpSession 对象通过会话 ID 来识别不同的客户端。它可以在用户的多次请求之间保持数据适用于存储用户的登录信息、购物车内容等。 HttpServletRequest HttpServletRequest 代表客户端的请求当客户端向服务器发送请求时服务器会创建一个 HttpServletRequest 对象该对象封装了客户端请求的所有信息如请求头、请求参数、请求方法等. 4、HttpServletResponse 功能 request是请求对象而response是响应对象。 response对象用于响应client请求向客户输出信息。 他封装了JSP产生的响应并发送到client以响应client请求。 4.1 功能介绍 用于响应客户端请求包括设置响应头信息、发送状态码、设置响应正文、重定向等功能。 设置响应头信息addHeader(“reFresh”, “5;URLxxxx”);发送状态码sendError(404);设置响应正文getWriter().print(“fdsfdsa”);重定向sendRedirect(“path”); 4.2 设置状态码和其他方法 response.setContentType(text/html;charsetutf-8)设置响应类型和编码response.setCharacterEncoding(“utf-8”)如果响应类型为文本那么就需要设置文本的编码类型然后浏览器使用这个编码来解读文本。注意如果没有设置contentType那么浏览器会认为contentType为text/html如果没设置编码那么默认为ISO-8859-1编码。所以以上两点在使用response返回结果之前必须设置。response.setStatus(200)设置状态码response.sendError(404, “您要查找的资源不存在”)发送错误状态码并显示错误信息。 4.3 设置响应头信息 response.setHeader(“contentType”, “text/html;charsetutf-8”)与setContentType()方法的功能相同。setContentType()方法属于便捷方法刷新定时重定向response.setHeader(Refresh,5; URLhttp://www.baidu.com)5秒后自动跳转到百度主页。 4.4 中文乱码问题 通过setContentType(text/html;charsetutf-8)和setCharacterEncoding(UTF-8)解决。 response.setContentType(text/html;charsetutf-8); response.setCharacterEncoding(UTF-8); response.getWriter().write(张三);4.5 重定向 使用sendRedirect方法可重定向到不同主机会使request中的属性失效并开启新的request对象。 这一点与转发不同。在client浏览器上将会得到跳转后的地址并又一次发送请求链接用户能够从浏览器的地址栏中看到跳转后的地址 response.sendRedirect(/param_demo/success.html);
http://www.w-s-a.com/news/657092/

相关文章:

  • 建设网站公司哪里好相关的热搜问题解决方案做网站要看什么书
  • 网站建设重要性黄岐建网站
  • 做网站电销《电子商务网站建设》精品课
  • 地方商城网站海外网站推广方法
  • 乐山 网站建设安阳给商家做网站推广
  • 网站空间一般多大邢台网站建设有哪些
  • h5网站开发工具有哪些wordpress清空post表
  • 公司开网站干嘛怎么制作一个免费的网站模板
  • 群晖wordpress搭建网站网站建设及管理
  • 中山企业网站建设公司抖音代运营合作模式
  • 南通营销网站开发做网站页面多少钱
  • 桂林生活网官方网站云主机和云电脑的区别
  • 内部网络网站怎么做vue做单页面网站
  • 如何建立网站教程wordpress粘帖图片
  • 广东网站备案要多久网站开发 pdf 文字版
  • 学校网站方案帮别人做钓鱼网站吗
  • 如何加强网站建设和信息宣传wordpress 搜索提示
  • 灰色网站怎么做php yaf 网站开发框架
  • 浙江建设网站首页提供做网站公司有哪些
  • 建公司网站报价公司seo是什么级别
  • 可信赖的武进网站建设中山网站建设方案
  • 网站设计方面有什么公司运动鞋网站建设目的
  • 学校门户网站流程建设方案找人做网站 多少钱
  • 网站域名更换相应内容网站策划 要求
  • 百盛联合建设集团网站开发网站的步骤
  • php做网站评价网络公司经营范围可以加技
  • 网站积分的作用保定专业网站建设
  • 莆田做网站公司电话如何提升网站访问速度
  • 网站开发流程步骤 口袋网页访问wordpress
  • 湘潭做网站的公司自助建站教程