J2EE:servlet response常用方法总结
来源:互联网 发布:c数据结构与算法pdf 编辑:程序博客网 时间:2024/06/05 17:24
response是HttpServletResponse的实例,用于提供给浏览器的响应信息
response 是响应,服务端(S)给浏览器(B)的响应
响应内容
通过response.getWriter(); 获取一个PrintWriter 对象
可以使用println(),append(),write(),format()等等方法设置返回给浏览器的html内容
import java.io.IOException;import java.util.Date;import java.util.Enumeration;import javax.servlet.ServletConfig;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class HelloServlet extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse response){ try { response.getWriter().println("<h1>Hello Servlet!</h1>"); response.getWriter().println(new Date().toLocaleString()); } catch (IOException e) { e.printStackTrace(); } }}
设置响应格式
如果响应还未被提交,设置被发送到客户端的响应的内容类型。
response.setContentType("text/html");
“text/html” 是存在的,表示浏览器可以识别这种格式,如果换一个其他的格式, 比如 “text/lol” ,浏览器不能识别,那么打开此servlet就会弹出一个下载的对话框。
PrintWriter pw = response.getWriter();pw.println("<h1>Hello Servlet</h1>");response.setContentType("text/lol");
设置响应编码
设置响应编码有两种方式
第一种方式
response.setContentType("text/html;charset=UTF-8");response.getWriter().println("<h1>Hello Servlet!</h1>");response.getWriter().println(new Date().toLocaleString());
不仅发送到浏览器的内容使用UTF-8编码,而且还通知浏览器使用UTF-8编码方式进行显示。所以总能正常显示中文
第二种方式
response.setCharacterEncoding("UTF-8");
发送给浏览器的内容使用UTF-8编码,如果浏览器显示编码方式不是UTF-8会乱码,需要手动设置。
301或302客户端跳转
302 表示临时跳转
301 表示永久性跳转
302永久跳转
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 请求:浏览器--> 服务器 String name = request.getParameter("name"); String password = request.getParameter("password"); if("admin".equals(name) && "123".equals(password)) // 服务端跳转 request.getRequestDispatcher("success.html").forward(request, response); else // 客户端302永久性跳转 response.sendRedirect("fail.html"); }
301临时跳转
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); String password = request.getParameter("password"); if ("admin".equals(name) && "123".equals(password)) { request.getRequestDispatcher("success.html").forward(request, response); } else { // 301 临时跳转 response.setStatus(301); response.setHeader("Location", "fail.html"); } }
301和302的区别主要在搜索引擎对页面排名的时候有影响,这是属于SEO范畴的概念
设置浏览器不适用缓存
使用缓存可以加快页面的加载,降低服务端的负担。但是也可能看到过时的信息。
“`
public void doGet(HttpServletRequest request, HttpServletResponse response) {
try { response.setDateHeader("Expires", 0); response.setHeader("Cache-Controll", "no-cache"); response.setHeader("pragma", "no-cache"); response.getWriter().println("<h1>Hello Servlet!</h1>"); response.getWriter().println(new Date().toLocaleString()); } catch (IOException e) { e.printStackTrace(); }}
http://www.w3cschool.cn/servlet/servlet-server-response.html
0 0
- J2EE:servlet response常用方法总结
- J2EE:servlet request常用方法总结
- Request与Response常用方法总结
- Request与Response常用方法总结
- Servlet总结-Response
- response对象在servlet中的常用方法讲解
- servlet---response方法
- request、response与servlet总结
- servlet中response简单总结
- response常用方法
- servlet request请求对象常用方法总结
- servlet常用属性及方法总结
- servlet request请求对象常用方法总结
- Servlet中Request和Response对象总结
- request,response的常用方法?
- request、response的常用方法
- Request以及Response常用方法
- J2EE常用资源管理方式总结
- C/C++生成高斯分布随机数
- SLAM笔记(四)运动恢复结构的数学基础(本征矩阵F,单应矩阵H,八点法与五点法,四点法)
- 文件描述符 dup/dup2函数
- Kafka入门经典教程
- jdk安装后没有配置环境变量也可以java -version
- J2EE:servlet response常用方法总结
- LeetCode题目:315. Count of Smaller Numbers After Self
- 尾递归总结
- phoenix 把CSV格式的数据导入到Hbase执行日志
- 智能制造核心技术在哪里?
- 聊聊RPC之Register
- PIC18F45K80 将RA0等配置为数字输入I/O
- Android IPC机制全解析
- 一个奇怪的发现:html与body,body的margin对html不起作用,html的padding对body却起作用