JavaWeb重点分析(5)

2019-09-02 19:01

? 我的第一个测试servlet

package com.xueye.TestRequestford;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class TestFord extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(\ PrintWriter out = response.getWriter(); out.println(\用户登录\ out.println(\ out.println(\用户名:
\ out.println(\密 码:
\ out.println(\登录'>\ out.println(\ out.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } }

? 处理我们提交的数据的servlet

package com.xueye.TestRequestford;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class ForWordCl extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(\ request.setCharacterEncoding(\ PrintWriter out = response.getWriter(); String name=request.getParameter(\ String pwd=request.getParameter(\ System.out.println(\ System.out.println(\ request.setAttribute(\ //request.getRequestDispatcher(\ response.sendRedirect(\ } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); }

}

? 第三个servlet

package com.xueye.TestRequestford;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class Ok extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)

}

}

throws ServletException, IOException {

response.setContentType(\request.setCharacterEncoding(\PrintWriter out = response.getWriter();

out.println(\我的名字是:\out.println(\我的密码是:\

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }

this.doGet(request, response);

注意:使用转发不能访问web应用外的url,forward发生在web服务器,所以在上面的ForwardCl和Ok这两个servlet用的是同一个request和response ? 1 sendRedirect和forward的区别是什么?

答:1 sendRedirect叫做重定向,forward叫做转发 2 他们发生的位置不一样sendRedirect发生在浏览器而forward发生在服务器 3 用法不一样

request.getRequestDispatcher(\

// response.sendRedirect(\名/路径\4 能够去的url不一样 重定向可以访问任何url而转发只能访问当前的web资源

Servlet的会话技术

? 什么是会话

指的是用户开一个浏览器,访问一个网站,只要不关闭该浏览器,不管用户点击了多少个超链接,访问了多少资源,知道该用户关闭了该浏览器,整个过程我们称为一个会话 比如:打电话

? 会话过程中要解决的一些问题?

每个用户在使用浏览器与服务器进行会话的过程中,不可避免的会产生各自的一些数据,服务器要想办法为每个用户保存这些数据。

例如:多个用户点击超链接通过一个servlet各自购买商品,服务器应该想办法将每个用户购买的商品保存到一个地方,以便用户的结账

Cookie

为什么需要cookie?

思考:

1 我们登陆一个网站,想要显示你上次登陆的时间,我们该怎么完成? 2 如何显示用户曾经浏览的商品 3 还有在我们等了网站的时候,发现用户名和密码已经给你填进去了,不用我们重新

填写

解决之道:cookie技术

Cookie是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器,当用户再次使用浏览器访问服务器中的web资源的时候,就会带着各自的数据去,这样web资源处理的就是用户自己的数据了。 ? 创建cookie

package com.xueye.testCookie;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class TestCookie extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }

response.setContentType(\request.setCharacterEncoding(\PrintWriter out = response.getWriter(); //创建我们的cookie

Cookie ck=new Cookie(\

ck.setMaxAge(3600);//设置生命周期为一个小时3600秒 //把我们创建的cookie返回给我们的浏览器 response.addCookie(ck); out.println(\已经发送\

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }

this.doGet(request, response);

}

? 读取cookie

package com.xueye.testCookie;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class ReadCookie1 extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(\ request.setCharacterEncoding(\ PrintWriter out = response.getWriter(); //读取kookie信息


JavaWeb重点分析(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:江苏省1:50万区域环境地质调查报告 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: