⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 actionservlet.java

📁 一个用纯JAVA语言做的一个拥护登录系统,用道到了HashMap ,HashList,很适合初学者.
💻 JAVA
字号:
package leng.servlet;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.servlet.ServletContext;
import javax.servlet.RequestDispatcher;
import javax.servlet.http.HttpSession;

import java.io.PrintWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;

import leng.entity.User;
import leng.entity.Student;

/***********************************************
 *如:http://127.0.0.1:8080/xiaolin/login.do   *
 *getServletContext()返回"/login.do"		   *
 *getContextPath()返回"/xiaolin"			   *
 ***********************************************/

public class ActionServlet extends HttpServlet
{
	public void doPost(HttpServletRequest request, HttpServletResponse response) 
		throws ServletException, IOException {
		ServletContext application = getServletContext();//返回application
		HttpSession session = request.getSession();//返回session
		String path = request.getServletPath();//返回路径
		String nextPage = null;//所要跳转的页面
		path = path.substring(0, path.indexOf("."));//返回"."之前的一段。如,/login.do,返回login
		request.setCharacterEncoding("gb2312");
		

		if("/login".equals(path)) {//如果点击登录确定按钮
			String loginName = request.getParameter("loginName");
			String loginPwd = request.getParameter("loginPwd");
//			System.out.println("****" + loginName + "****");
//			System.out.println("****" + loginPwd + "****");
			User user = new User(loginName, loginPwd);//将传进来的loginName和loginPwd封装成user对象	
			session.setAttribute("loginUser", user);//将user对象存入session
			
			//返回application中的用户列表,与表单传进来的user进行比较。
			ArrayList userList = (ArrayList) application.getAttribute("userList");
			
			//迭代用户列表,发现符合的就跳出循环;迭代完毕后仍然没有符合的,就表明用户名密码错误
			//有符合的用户就准备跳转到/page/success.jsp,没有符合的就跳转到/page/fail.jsp
			for(Object temp : userList) {
				if(((User)temp).equals(user)) {
					nextPage = "/page/success.jsp";
					break;
				}
				nextPage = "/page/fail.jsp";
			}
			
//			System.out.println("****" + nextPage + "****");
		} else if("/create".equals(path)) {//如果点击创建按钮
			String stuId = request.getParameter("stuId");
			String stuName = request.getParameter("stuName");
			Student student = new Student(stuId, stuName);////将传进来的stuId和stuName封装成student对象	

			//从application中返回学生map
			HashMap stuMap = (HashMap) application.getAttribute("stuMap");

			stuMap.put(student.hashCode(), student);//将封装好的student对象存入学生map
			nextPage = "/page/list.jsp";//创建成功,跳回列表页面
		} else if("/remove".equals(path)) {//如果点击删除按钮
			String[] items = request.getParameterValues("item");//返回所有选中的项目的value,以String[]类型返回
			//System.out.println("***" + items + "***");
			HashMap stuMap = (HashMap) application.getAttribute("stuMap");//返回application中的学生列表
			
			for(Object itemTemp : items) {
				int code = Integer.parseInt((String) itemTemp);//将hashCode转换为int类型
				stuMap.remove(code);//删除对应key的学生对象
			}
			nextPage = "/page/list.jsp";//删除成功,跳回列表页面
		}

		//页面跳转
		RequestDispatcher dispatcher = application.getRequestDispatcher(nextPage);
		dispatcher.forward(request, response);
	}

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

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -