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

怎样做网站跳转墨刀网站开发原型图教程

怎样做网站跳转,墨刀网站开发原型图教程,网站后台制作用的软件,杭州19楼官网目录 Response响应对象 1.基本功能 2.重定向 3.路径 4.服务器输出数据到浏览器 Response响应对象 1.基本功能 设置响应行#xff1a;格式为 HTTP/1.1 200 OK#xff0c;可以使用 setStatus(int sc) 方法设置状态码为 200 表示成功。 方法名称描述setStatus(int sc)设… 目录 Response响应对象 1.基本功能 2.重定向 3.路径 4.服务器输出数据到浏览器 Response响应对象 1.基本功能 设置响应行格式为 HTTP/1.1 200 OK可以使用 setStatus(int sc) 方法设置状态码为 200 表示成功。 方法名称描述setStatus(int sc)设置状态码为给定的整数值。 设置响应头使用 setHeader(String name, String value) 方法来设置响应头信息比如 setHeader(Content-Type, text/html) 设置响应内容类型为 HTML。 方法名称描述setHeader(String name, String value)设置指定名称的请求头为给定的值。 设置响应体获取输出流 方法名称描述getWriter()获取字符输出流用于向客户端发送字符数据。getOutputStream()获取字节输出流用于向客户端发送字节数据。 使用输出流将数据输出到客户端浏览器。 2.重定向 重定向通过response对象的sendRedirect(目标地址)进行跳转 方法名称描述sendRedirect(String location)通过指定目标地址进行重定向跳转。设置响应的 Location 头使客户端重新向指定的目标地址发送请求。 package com.company;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.concurrent.TimeUnit;WebServlet(/Demo9) public class Demo9 extends HttpServlet{Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {try { // 等待三秒后跳转回到主页面TimeUnit.SECONDS.sleep(3);}catch (Exception e){e.printStackTrace();} // 本站资源进行跳转 // resp.sendRedirect(/com_alphamilk_war_exploded/Demo8); // 外部站点资源进行跳转resp.sendRedirect(https://blog.csdn.net/dogxixi?spm1000.2115.3001.5343);} }访问后就自动跳转到CSDN中· response对象重定向的特点(sendRedirect) 地址栏会发生变化重定向可以访问其他站点服务器的资源重定向是二次请求但是重定向后不能使用request的共享变量 request对象的请求转发特定(Forward) 地址栏不会发生变化转发只能访问当前服务器下的资源转发是一次请求 3.路径 相对路径通过访问当前的资源和目标的资源之间的相对位置关系 同级目录. /资源名称     后退一个目录: . . /资源名称 特点无法确定唯一的资源 绝对路径根据请求对象分类 如果是客户端浏览器访问的就需要加上虚拟目录如果是服务器自行使用则不需要加虚拟目录 特点通过绝对路径可以确定唯一的资源. 注意但是在重定向时为了保证跳转的准确性需要将虚拟目录包含在重定向的路径中。例如resp.sendRedirect(/context_path/Demo8)。 问题引出 由于为了重定向的准确性一般会在重定向的路径中加入虚拟目录但是如果虚拟目录经常发生变化就需要相应的所有有关的路径全部修改会造成大量的时间浪费所以引入了动态路径的概念。具体原理是通过request对象的方法的获取路径getContextPath/资源名。 案例代码: package com.company;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.concurrent.TimeUnit;WebServlet(/Demo9) public class Demo9 extends HttpServlet{Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {try { // 等待三秒后跳转回到主页面TimeUnit.SECONDS.sleep(3);}catch (Exception e){e.printStackTrace();} // 本站资源进行跳转(动态路径)resp.sendRedirect(req.getContextPath()/Demo5);} }4.服务器输出数据到浏览器 通过流输出内容具体方法如下 1.通过字符流实现数据发送 package com.company;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter;WebServlet(/Demo10) public class writer extends HttpServlet{Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 创建字符流输出对象PrintWriter writer resp.getWriter(); // 输出数据writer.write(h1Hello World/h1 h1你好 世界/h1);writer.close();} // 统一方法操作Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doGet(req, resp);} }可以发现用了字符流输出中文的时候出现了乱码原因在于使用编码的字符集不一致字符集使用的是GBK 而流使用的是ISO - 8859-1,只需要告诉浏览器服务器用的编码方式浏览器就会自动进行相应编码转换 修改后代码 package com.company;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter;WebServlet(/Demo10) public class writer extends HttpServlet{Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 告诉浏览器服务器使用编码方式是utf-8resp.setHeader(content-type,text/html;charsetutf-8);// 创建字符流输出对象PrintWriter writer resp.getWriter(); // 输出数据writer.write(h1Hello World/h1 h1你好 世界/h1);writer.close();} // 统一方法操作Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doGet(req, resp);} }2.字节流发送数据 原理同上 案例 package com.company;import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.nio.charset.StandardCharsets;WebServlet(/Demo11) public class writeByte extends HttpServlet{Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // 告诉浏览器编码格式为utf-8resp.setHeader(content-type,text/html;charsetutf-8); // 创建字节流ServletOutputStream sos resp.getOutputStream(); // 使用字节流输出sos.write(你好啊.getBytes(StandardCharsets.UTF_8));}Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doPost(req, resp);} }如果不了解字符流和字节流和打印流的知识可以在下面的章节中了解更多内容Java IOFile、字节输入输出流、字符输入输出流、打印流附带相关面试题_Alphamilk的博客-CSDN博客
http://www.pierceye.com/news/877483/

相关文章:

  • 网站提交做海鱼的网站
  • 建设网站业务竞争大唯一做魅惑的网站
  • 建设学校网站的意义更换wordpress图标
  • 环保局网站如何做备案证明在线代理服务器网页版
  • 十佳网站武昌做网站哪家好
  • wordpress调用同分类最新文章seo营销网站的设计标准
  • 免费下载网站有哪些连云港网络公司排名
  • 如何迅速建企业网站毕设做网站需要什么技术准备
  • 可以做音基题的音乐网站公司网页设计怎么弄
  • 益阳营销型网站建设乌鲁木做兼职的网站
  • 如何建单位网站怎么让别人找你做网站
  • 青海建设厅职称网站建设小程序怎么挂失
  • 建设在线购物网站51zwd一起做网站广州
  • 如何制作网站图片帮忙做网站
  • 高端做网站公司网络信息安全公司
  • 手机网站图片自适应建设网站用的软件
  • wordpress postid随机苏州百度推广排名优化
  • 重庆企业网站推广服务做性的网站
  • asp.net 创建网站登陆建设银行网站异常
  • 柳州网站建设柳州wordpress 创建文集
  • 怎样把网站做成app多语言网站建设方案
  • 中国最新新闻头条南通百度网站快速优化
  • 乐清网站推广制作长沙银狐做网站
  • 做企业网站需要多久论坛网站推广方案
  • 郑州网站优化排名wordpress搭建本地博客
  • 如何获取网站域名证书刚刚北京传来重大消息
  • 找别人做淘客网站他能改pid吗现在中型公司做网站用的是什么框架
  • 泉州晋江网站建设费用海南建设银行官网招聘网站
  • 自己给公司做网站郑州工程建设信息网站
  • 单页网站建站外贸公司网站怎么设计更好