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

📄 useraction.java

📁 java学习的必要的资料,servlet的说明很好
💻 JAVA
字号:
package com.estore.struts.action;import java.sql.Date;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.actions.DispatchAction;import com.estore.struts.Globals;import com.estore.struts.entity.User;import com.estore.struts.entity.UserItem;import com.estore.struts.service.UserService;import com.estore.struts.utils.ServiceFactory;public class UserAction extends DispatchAction {		private UserService userService = (UserService) ServiceFactory			.getInstance().getService(Globals.USER_SERVICE);	/*	 * 注册一个新用户,此方法同时插入两个动作:	 * 向数据库中保存用户信息,以及向数据库中保存用户的基本信息UserItem;	 */	public ActionForward register(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {				String code = request.getParameter("code");				String saveCode = (String) request.getSession().getAttribute("code");		if(saveCode!=null && !saveCode.equalsIgnoreCase(code)){			response.sendRedirect( request.getContextPath() + "/pages/register.jsp");			return null;		}				User user = new User();		user.setUsername(request.getParameter("userName"));		user.setPassword(request.getParameter("password"));		user.setCreatetime(new Date(System.currentTimeMillis()));		user.setState(1);		user.setRole(1);		UserItem userItem = new UserItem();		userItem.setItem_name(request.getParameter("userName"));		userItem.setItem_address(request.getParameter("address"));		userItem.setItem_postcode(request.getParameter("postcode"));		userItem.setItem_officephone(request.getParameter("officephone"));		userItem.setItem_mobilephone(request.getParameter("mobilephone"));		userItem.setItem_email(request.getParameter("email"));				/*		 * 建立起关系		 */		userItem.setUser(user);		user.addUserItem(userItem);				userService.register(user);				return mapping.findForward("registersuccess");	}	/*	 * 用户登录方法	 */	public ActionForward login(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {		String username = request.getParameter("userid").trim();		String password = request.getParameter("password").trim();		if (userService.isLoginCorrect(username, password)) {			User user = userService.getUserByName(username);			/*			 * 只有在用户登录的时候才创建一个session,并且把用户的信息存放到session中;			 * 同时sessionListener也会把car同时也放到session中,这样能保证为每一个来			 * 网站需要购物的用户分配一个session,一个购物车,并且也可以利用session来 跟踪用户.			 */			HttpSession session = ((HttpServletRequest) request).getSession(true);			session.setAttribute("user", user);			return mapping.findForward("loginsuccess");		} else {			String message = "用户名或者密码错误!";			request.setAttribute("message", message);			return mapping.findForward("loginfailed");		}			}	/*	 * 查看用户的详细信息,先从session中获得user用户,	 * 然后根据用户再从数据库中获得用户的详细信息useritems;	 */	public ActionForward userinfo(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {		HttpSession session = request.getSession();		User user = (User) session.getAttribute("user");		request.setAttribute("useritems", userService.getUserItem(user));		return mapping.findForward("userinfo");	}	/*	 * 可以让用户新添加一个新的收货地址,	 * 然后再转向	 */	public ActionForward addUserItem(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {		HttpSession session = request.getSession();		User user = (User) session.getAttribute("user");				UserItem useritem = new UserItem();				useritem.setUser(user);		useritem.setItem_name(request.getParameter("username").trim());		useritem.setItem_address(request.getParameter("address").trim());		useritem.setItem_postcode(request.getParameter("postcode").trim());		useritem.setItem_officephone(request.getParameter("officephone").trim());		useritem.setItem_mobilephone(request.getParameter("mobilephone").trim());		useritem.setItem_email(request.getParameter("email").trim());		userService.addUserItem(useritem);				request.setAttribute("useritems", userService.getUserItem(user));		return mapping.findForward("adduseritem");	}	/*	 * 删除用户指定的一个详细信息;	 */	public ActionForward deleteUserItem(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {		HttpSession session = request.getSession();		User user = (User) session.getAttribute("user");		Integer id = Integer.parseInt(request.getParameter("itemid"));		if (id == null) {			request.setAttribute("message","删除时出错,没有该收货人!请<a onclick='javascript:history.go(-1)'>返回</a>!");			return mapping.findForward("error");		}		userService.deleteUserItem(id);		return mapping.findForward("deleteuseritem");	}	/*	 * 用户退出系统并做一些清理工作;	 */	public ActionForward logout(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {				HttpSession session = request.getSession();		session.removeAttribute("user");		session.removeAttribute("cart");		return mapping.findForward("logout");	}	public ActionForward report(ActionMapping mapping, ActionForm form,			HttpServletRequest request, HttpServletResponse response)			throws Exception {				HttpSession session = request.getSession();		User user = (User) session.getAttribute("user");		/*		 * 判断用户的登录身份,只有管理员才能访问此功能;		 */		if(user.getRole() != 0){			request.setAttribute("message","请以管理员的身份重新<a href='/EC_Port/pages/login.jsp' style='color:red;'>登录</a>!&nbsp;请<a onclick='javascript:history.go(-1)' style='color:red;'>返回</a>!");			return mapping.findForward("error");		}		return mapping.findForward("report");	}}

⌨️ 快捷键说明

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