📄 authoraction.java
字号:
package com.weblog.web;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;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.action.DynaActionForm;import org.apache.struts.actions.DispatchAction;import com.weblog.model.Author;import com.weblog.service.AuthorManager;public final class AuthorAction extends DispatchAction { private final Log log = LogFactory.getLog(AuthorAction.class); private AuthorManager mgr = null; public void setAuthorManager(AuthorManager authorManager) { this.mgr = authorManager; } public ActionForward cancel(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("list"); } public ActionForward delete(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (log.isDebugEnabled()) { log.debug("Entering 'delete' method"); } ActionMessages messages = new ActionMessages(); DynaActionForm authorForm = (DynaActionForm) form; // Exceptions are caught by ActionExceptionHandler Author author = (Author) authorForm.get("author"); mgr.removeAuthor(request.getParameter("author.id")); messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage( "author.deleted")); // save messages in session, so they'll survive the redirect saveMessages(request.getSession(), messages); return mapping.findForward("search"); } public ActionForward edit(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (log.isDebugEnabled()) { log.debug("Entering 'edit' method"); } DynaActionForm authorForm = (DynaActionForm) form; String authorId = request.getParameter("id"); // null userId indicates an add if (authorId != null) { Author author = mgr.getAuthor(authorId); if (author == null) { ActionMessages errors = new ActionMessages(); errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage( "user.missing")); saveErrors(request, errors); return mapping.findForward("list"); } authorForm.set("author", author); } return mapping.findForward("edit"); } public ActionForward save(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (log.isDebugEnabled()) { log.debug("Entering 'save' method"); } if (isCancelled(request)) { return list(mapping, form, request, response); } // run validation rules on this form ActionMessages errors = form.validate(mapping, request); if (!errors.isEmpty()) { saveErrors(request, errors); return mapping.findForward("edit"); } DynaActionForm authorForm = (DynaActionForm) form; Author author = (Author) authorForm.get("author"); mgr.saveAuthor(author); ActionMessages messages = new ActionMessages(); messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage( "author.saved", author.getName())); saveMessages(request.getSession(), messages); return mapping.findForward("authors"); } public ActionForward list(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { if (log.isDebugEnabled()) { log.debug("entering 'list' method..."); } request.setAttribute("authors", mgr.getAuthors()); return mapping.findForward("list"); } public ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return list(mapping, form, request, response); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -