newtopicaction.java

来自「该系统利用Java实现简单论坛功能」· Java 代码 · 共 54 行

JAVA
54
字号
package ch11.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
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 ch11.util.*;

public final class NewTopicAction extends Action{  
	public ActionForward execute(
		ActionMapping mapping,
		ActionForm form,
		HttpServletRequest request,  
		HttpServletResponse response) throws Exception {	
        HttpSession session = request.getSession();
		ActionMessages errors = new ActionMessages();
        //确认用户是否有发表文章的权限
        String username=(String)session.getAttribute(Constants.USERNAME_KEY);
        String PageForward;
        //用户未登录
        if (username==null) {
            errors.add(ActionMessages.GLOBAL_MESSAGE,
                           new ActionMessage("errors.userUnLogin"));
			if (!errors.isEmpty()) {
				saveErrors(request, errors);
			} 
 			PageForward="toWrong";  
        	
        }
        //用户为游客
        else if (username.equals("guest")){
            errors.add(ActionMessages.GLOBAL_MESSAGE,
                           new ActionMessage("errors.guestCantSpeak"));
			if (!errors.isEmpty()) {
				saveErrors(request, errors);
			} 
 			PageForward="toWrong";  
        	
        }
        //合法用户
        else{
 	   		PageForward="toNewTopic";				
 			saveToken(request);  //避免重复提交
        }
  	   	return (mapping.findForward(PageForward));				
	}

}

⌨️ 快捷键说明

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