Servlet和Cookie综合应用

来源:互联网 发布:查药物的软件 编辑:程序博客网 时间:2024/05/17 04:08

太久没写东西了,上来灌灌水

Servlet间传值及接收

import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;public class AServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {HttpSession session=request.getSession();session.setAttribute("name", "LinDL");request.getRequestDispatcher("b").forward(request, response);}}

import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class BServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("session : "+request.getSession().getAttribute("name"));request.getRequestDispatcher("/index.jsp").forward(request, response);}}
转发到页面接收数据

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <title>My JSP 'index.jsp' starting page</title>  </head>    <body>  name:     <%=session.getAttribute("name") %>  </body></html>
另一个例子,cookie在页面间的传值

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 CServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {Cookie cookie=new Cookie("p1", "v1");cookie.setMaxAge(10);response.addCookie(cookie);request.getRequestDispatcher("d").forward(request, response);}}

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 DServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");PrintWriter out = response.getWriter();Cookie[] cookies=request.getCookies();for(Cookie cookie:cookies){System.out.println("----------------------------------");System.out.println("cookie name : "+cookie.getName());System.out.println("cookie value : "+ cookie.getValue());System.out.println("----------------------------------");}}}
在控制台查看cookie信息。。

下面这个通过将数据保存在cookie中,下次登录同个页面时输入框就有之前输入的数据为默认值

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 LoginServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");PrintWriter out = response.getWriter();String username=request.getParameter("username");String password=request.getParameter("password");Cookie cookie1=new Cookie("username", username);Cookie cookie2=new Cookie("password", password);response.addCookie(cookie1);response.addCookie(cookie2);}}

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><html><head><title>My JSP 'login.jsp' starting page</title></head><body><%Cookie[] cookies = request.getCookies();String username = "";String password = "";if (cookies != null) {for (Cookie cookie : cookies) {if (cookie.getName() != null&& cookie.getName().equals("username")) {username = cookie.getValue();}if (cookie.getName() != null&& cookie.getName().equals("password")) {password = cookie.getValue();}}}%><form action="loginServlet"><input type="text" name="username" value="<%=username%>" /><br><input type="password" name="password" value="<%=password%>" /><br><input type="submit" value="提交" /></form></body></html>


0 0
原创粉丝点击