📄 useraction.java
字号:
package com.tarena.action;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.MappingDispatchAction;
import com.tarena.biz.UserBiz;
import com.tarena.entity.User;
import com.tarena.form.UserForm;
import com.tarena.util.PaginationInfo;
public class UserAction extends MappingDispatchAction {
private UserBiz userBiz = new UserBiz();
public ActionForward find(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
List<User> users = userBiz.find(new User());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
UserForm userForm = (UserForm) form;
User u = userForm.getUser();
User user = userBiz.findById(u.getId());
request.setAttribute("user", user);
forward = mapping.findForward("edit");
} catch (Exception e) {
saveErrors(request, getMessages("error.user.find"));
e.printStackTrace();
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
UserForm userForm = (UserForm) form;
User user = userForm.getUser();
userBiz.modify(user);
forward = mapping.findForward("success");
} catch (Exception e) {
saveErrors(request, getMessages("error.user.save"));
e.printStackTrace();
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward prepareToken(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
saveToken(request);
return mapping.findForward("add");
}
public ActionForward add(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
if (isTokenValid(request, true)) {
try {
UserForm userForm = (UserForm) form;
User user = userForm.getUser();
boolean isUserExist = userBiz.isUserNameExist(user.getUserName());
if (isUserExist) {
throw new UserNameAlreadyExistException();
}
userBiz.add(user);
forward = mapping.findForward("success");
} catch (UserNameAlreadyExistException e) {
throw e;
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.add"));
forward = mapping.findForward("error");
}
} else {
forward = mapping.findForward("errorToken");
}
return forward;
}
public ActionForward remove(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
UserForm userForm = (UserForm) form;
User user = userForm.getUser();
userBiz.remove(user.getId());
forward = mapping.findForward("success");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.remove"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward firstPage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
info.firstPage();
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward lastPage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
info.lastPage();
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward findBySession(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
int rows = userBiz.getRowCount();
int currentPage = info.getCurrentPage();
info.setRowCount(rows);
if(currentPage > info.getPageCount()){
currentPage = info.getPageCount();
}
info.gotoPage(currentPage);
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward previousPage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
info.previousPage();
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward nextPage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
info.nextPage();
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
public ActionForward gotoPage(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
ActionForward forward = null;
try {
HttpSession session = request.getSession();
PaginationInfo info = (PaginationInfo) session.getAttribute("userPagination");
String pageNo = request.getParameter("pageNo");
info.gotoPage(Integer.parseInt(pageNo));
List<User> users = userBiz.findByPage(info.getStartRow(), info.getRowPerPage());
request.setAttribute("users", users);
forward = mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
saveErrors(request, getMessages("error.user.find"));
forward = mapping.findForward("error");
}
return forward;
}
private ActionMessages getMessages(String key) {
ActionMessages errors = new ActionErrors();
ActionMessage message = new ActionMessage(key);
errors.add("error", message);
return errors;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -