J2EE Servlet 学习笔记4
2014-04-15 15:52
375 查看
<?xml version="1.0" encoding="gb2312"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <servlet> <servlet-name>LogoutServlet</servlet-name> <servlet-class>org.laotou99.abc4.servlet.LogoutServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LogoutServlet</servlet-name> <url-pattern>/logout</url-pattern> </servlet-mapping> <servlet> <servlet-name>GreetServlet</servlet-name> <servlet-class>org.laotou99.abc4.servlet.GreetServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GreetServlet</servlet-name> <url-pattern>/greet</url-pattern> </servlet-mapping> <servlet> <servlet-name>LoginChkServlet</servlet-name> <servlet-class>org.laotou99.abc4.servlet.LoginChkServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginChkServlet</servlet-name> <url-pattern>/loginchk</url-pattern> </servlet-mapping> <servlet> <servlet-name>LoginServlet</servlet-name> <servlet-class>org.laotou99.abc4.servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginServlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping> <servlet> <servlet-name>LoginServlet2</servlet-name> <servlet-class>org.laotou99.abc4.servlet.LoginServlet2</servlet-class> </servlet> <servlet-mapping> <servlet-name>LoginServlet2</servlet-name> <url-pattern>/login2</url-pattern> </servlet-mapping> <servlet> <servlet-name>GreetServlet2</servlet-name> <servlet-class>org.laotou99.abc4.servlet.GreetServlet2</servlet-class> </servlet> <servlet-mapping> <servlet-name>GreetServlet2</servlet-name> <url-pattern>/greet2</url-pattern> </servlet-mapping> <session-config> <session-timeout>5</session-timeout> </session-config> </web-app>
//OutputSessionInfo package org.laotou99.abc4.servlet; import java.io.*; import javax.servlet.http.*; import java.util.Date; //javac -d ..\WEB-INF\classes OutputSessionInfo.java public class OutputSessionInfo { public static void printSessionInfo(PrintWriter out,HttpSession session) { out.println("<table>"); out.println("<tr>"); out.println("<td>会话的状态</td>"); if(session.isNew()) { out.println("<td>新的会话</td>"); } else { out.println("<td>旧的会话</td>"); } out.println("</tr>"); out.println("<tr>"); out.println("<td>会话ID</td>"); out.println("<td>"+session.getId()+"</td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td>创建时间:</td>"); out.println("<td>"+new Date(session.getCreationTime())+"</td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td>上次访问时间:</td>"); out.println("<td>"+new Date(session.getLastAccessedTime())+"</td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td>最大不活动时间间隔(s):</td>"); out.println("<td>"+session.getMaxInactiveInterval()+"</td>"); out.println("</tr>"); out.println("</table>"); } }
//LogoutServlet package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //javac -d ..\WEB-INF\classes LogoutServlet.java public class LogoutServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html;charset=gb2312"); HttpSession session = req.getSession(); session.invalidate(); PrintWriter out = resp.getWriter(); out.println("<html><head><title>退出登入</title></head>"); out.println("<body>"); out.println("已退出登录<br>"); out.println("<a href=login>重新登录</a>"); out.println("</body></html>"); out.println(""); out.close(); } }
//LoginServlet2 package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //javac -d ..\WEB-INF\classes LoginServlet2.java public class LoginServlet2 extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String action =req.getParameter("action"); if("chk".equals(action)) { String name=req.getParameter("user"); String pwd=req.getParameter("password"); if((name!=null)&&(pwd!=null)) { if(name.equals("zhangsan") && pwd.equals("1234")) { StringBuffer sb = new StringBuffer(); sb.append("username-"); sb.append(name); sb.append("&password-"); sb.append(pwd); Cookie cookie=new Cookie("userinfo",sb.toString()); cookie.setMaxAge(1800); resp.addCookie(cookie); resp.sendRedirect("greet2"); return; } else { resp.setContentType("text/html;charset=gb2312"); PrintWriter out = resp.getWriter(); out.println("用户名密码错误,请<a href=login2>重新登入</a>"); return; } } } else { resp.setContentType("text/html;charset=gb2312"); PrintWriter out = resp.getWriter(); out.println("<html>"); out.println("<meta http-equiv=\"Pragma\" content=\"no-cache\">"); out.println("<head><title>登录页面</title></head>"); out.println("<body>"); out.println("<p>"); out.println("<form method=post action=login2?action=chk>"); out.println("<table>"); out.println("<tr>"); out.println("<td>请输入用户名</td>"); out.println("<td><input type=text name=user></td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td>请输入密码</td>"); out.println("<td><input type=password name=password></td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><input type=reset value=重置></td>"); out.println("<td><input type=submit value=登入></td>"); out.println("</tr>"); out.println("</table></form></body></html>"); out.println(""); out.close(); } } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); } }
//LoginServlet package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //import OutputSessionInfo; import org.laotou99.abc4.servlet.OutputSessionInfo; //javac -d ..\WEB-INF\classes LoginServlet.java public class LoginServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html;charset=gb2312"); HttpSession session=req.getSession(); String user=(String)session.getAttribute("user"); PrintWriter out=resp.getWriter(); out.println("<html>"); out.println("<meta http-equiv=\"Pragma\" content=\"no-cache\">"); out.println("<head><title>登入页面</title></head>"); out.println("<body>"); OutputSessionInfo.printSessionInfo(out,session); out.println("<p>"); out.println("<form method=post action=loginchk"); out.println("<table>"); out.println("<tr>"); out.println("<td>请输入用户名</td>"); if(null==user) { out.println("<td><input type=text name=user></td>"); } else { out.println("<td><input type=text name=user value="+ user +"></td>"); } out.println("</tr>"); out.println("<tr>"); out.println("<td>请输入密码</td>"); out.println("<td><input type=password name=password></td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><input type=reset value=重填></td>"); out.println("<td><input type=submit value=登入></td>"); out.println("</tr>"); out.println("</table>"); out.println("</form>"); out.println("</body>"); out.println("</html>"); out.println(""); out.close(); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); } }
//LoginChkServlet package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //javac -d ..\WEB-INF\classes LoginChkServlet.java public class LoginChkServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //req.setCharacterEncoding("gb2312"); String name=req.getParameter("user"); String pwd=req.getParameter("password"); if(null==name || null==pwd || name.equals("") || pwd.equals("")) { resp.sendRedirect("login"); return; } else { HttpSession session=req.getSession(); session.setAttribute("user",name); resp.sendRedirect("greet"); return; } } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); } }
//GreetServlet2 package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //javac -d ..\WEB-INF\classes GreetServlet2.java public class GreetServlet2 extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Cookie[] cookies=req.getCookies(); if(null!=cookies && cookies.length!=0) { String name = null; String pwd = null; for(int i=0;i<cookies.length;i++) { Cookie cookie=cookies[i]; String cName=cookie.getName(); if(cName.equals("userinfo")) { String cValue=cookie.getValue(); String[] userInfo=cValue.split("&"); for(int j=0;j<userInfo.length;j++) { String[] value=userInfo[j].split("-"); if(value[0].equals("username")) { name=value[1]; } if(value[0].equals("password")) { pwd=value[1]; } } } } if("zhangsan".equals(name) &&"1234".equals(pwd)) { resp.setContentType("text/html;charset=gb2312"); PrintWriter out = resp.getWriter(); out.println("<html>"); out.println("<meta http-equiv=\"Pragma\" content=\"no-cache\">"); out.println("<head><title>欢迎页面</title></head>"); out.println("<body>"); out.println(name+",欢迎你"); out.println("<a href=login2>重新登入</a>"); out.println("</body></html>"); out.println(""); out.println(""); out.close(); return; } } RequestDispatcher rd=req.getRequestDispatcher("login2"); rd.forward(req,resp); } }
//GreetServlet package org.laotou99.abc4.servlet; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; //javac -d ..\WEB-INF\classes GreetServlet.java public class GreetServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { HttpSession session = req.getSession(); String user = (String)session.getAttribute("user"); if(null==user) { resp.sendRedirect("login"); } else { resp.setContentType("text/html;charset=gb2312"); PrintWriter out = resp.getWriter(); out.println("<htm><head><title>欢迎页面</title></head>"); out.println("<body>"); OutputSessionInfo.printSessionInfo(out,session); out.println("<p>"); out.println("欢迎您 "+user+"<p>"); out.println("<a href=login>重新登入</a>"); out.println("<a href=logout>注销</a>"); out.println("</body></html>"); out.println(""); out.close(); } } }
相关文章推荐
- J2EE Servlet 学习笔记5
- J2EE Servlet 学习笔记2
- J2EE Servlet 学习笔记3
- J2EE与中间件 学习笔记2 Web组件 Servlet过滤器 监听器
- J2EE学习笔记(五)之Servlet中的Filter过滤器
- 初学 j2ee servlet 学习笔记(1)
- J2EE与中间件 学习笔记1 JDBC Session Servlet
- servlet学习笔记一 J2EE概念
- 手动创建Servlet--J2EE学习笔记
- Servlet笔记一之J2EE基本学习路线
- 【J2EE核心开发学习笔记 005】Servlet开发
- J2EE Servlet 学习笔记
- Servlet 学习笔记3:HTTP请求头
- jsp学习笔记_jsp/servlet的生命周期
- Servlet知识详解(一)ServletContext对象 和 ServletConfig对象学习笔记
- J2EE学习笔记:第五天 EJB
- ArcIMS学习之 HTML Viewer定制笔记 续二(2.Servlet与请求响应过程)
- Java for Web学习笔记(五九):Controller替代Servlet(1)请求匹配
- [Spring MVC]学习笔记--基础Servlet
- 在servlet设置javabean(最近学习j2ee遇到这个问题,在百度上找到的很好的回答)