📄 boardaction.java
字号:
package com.ntsky.bbs.action;
import org.apache.struts.action.*;
import javax.servlet.http.*;
import org.apache.log4j.Logger ;
import java.util.*;
import com.ntsky.bbs.service.Board;
import com.ntsky.bbs.action.Constant;
import com.ntsky.bbs.service.db.DBBoard;
import com.ntsky.xml.bbs.BoardXML;
import com.ntsky.xml.bbs.XMLCreator;
import com.ntsky.bbs.form.BoardActionForm;
import com.ntsky.bbs.service.BoardFactory;
import com.ntsky.xml.bbs.JavaScriptXML;
import com.ntsky.bbs.service.User;
import com.ntsky.bbs.service.Proxy;
import com.ntsky.bbs.service.UserProxy;
import com.ntsky.bbs.service.UserFactory;
/**
* <p>Title: Ntsky OpenSource BBS</p>
* <p>Description: 版块信息</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: WWW.FM880.COM</p>
* @author 姚君林
* @version 1.0
*/
public class BoardAction extends Action {
private final static Logger logger = Logger.getLogger(BoardAction.class);
public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception{
/**@todo: complete the business logic here, this is just a skeleton.*/
HttpSession session = httpServletRequest.getSession();
XMLCreator xmlCreator = XMLCreator.getInstance();
JavaScriptXML jsXML = xmlCreator.getJavaScriptXML();
BoardXML boardXML = xmlCreator.getBoardXML();
String action = httpServletRequest.getParameter("action");
logger.info("action 的值为 : " + action);
Board board = new DBBoard();
/**
* boaId(修改删除用)
*/
int boaId = 0;
String tempBoaId = httpServletRequest.getParameter("boaId");
if(tempBoaId != null){
boaId = Integer.parseInt(tempBoaId);
}
BoardActionForm boardActionForm = new BoardActionForm();
httpServletRequest.setAttribute(actionMapping.getAttribute(), boardActionForm);
BoardFactory factory = BoardFactory.getInstance();
/**
* 设置显示值
*/
Collection colBoaState = board.colBoaState();
httpServletRequest.setAttribute("colBoaState",colBoaState);
httpServletRequest.setAttribute("boaParId",factory.getBorParENUM());
httpServletRequest.setAttribute("showBoaInfo",factory.showBoaInfo());
boardActionForm.setAction(action);
/**
* 前台显示页面
*/
if((Constant.POSITION).equals(action)){
Iterator iterator = factory.getPageBoardInfo(0);
session.setAttribute("boaType", iterator);
logger.info("成功返回到index模板页面.....");
return actionMapping.findForward("page");
}
// session判断
String admin = (String)session.getAttribute(Constant.ADMIN_KEY);
if(admin == null){
httpServletRequest.setAttribute("javascript",jsXML.getJsInfo(1));
return actionMapping.findForward("admin_logon");
}
/**
* 添加
*/
if((Constant.CREATE).equals(action)){
boardActionForm.setBoaId(Integer.parseInt(factory.getMaxBoardId()));
return actionMapping.findForward("continue");
}
/**
* 修改情况
*/
if((Constant.EDIT).equals(action)){
//列出模板的数据
Board editBoard = factory.showBoaInfo(boaId);
boardActionForm.setBoaId(editBoard.getBoaId());
boardActionForm.setBoaParId(editBoard.getBoaParId());
boardActionForm.setBoaInfo(editBoard.getBoaInfo());
boardActionForm.setBoaMaster(editBoard.getBoaMaster());
boardActionForm.setBoaState(editBoard.getBoaState());
boardActionForm.setBoaType(editBoard.getBoaType());
boardActionForm.setBoaPasswd(editBoard.getBoaPasswd());
return actionMapping.findForward("continue");
}
/**
* 删除情况
*/
if((Constant.DELETE).equals(action)){
//权限
User user = UserFactory.getInstance().userInfo(admin);
String usrRole = user.getUsrRole();
Proxy proxy = new UserProxy();
if(!proxy.isAction(usrRole,3)){
httpServletRequest.setAttribute("javascript",jsXML.getJsInfo(2));
return actionMapping.findForward("admin_logon");
}
if(!(factory.delBoard(boaId))){
//打映出此节点有下属节点no
logger.info("存在下属节点......");
ActionMessages messages = new ActionMessages();
ActionMessage message = new ActionMessage(
"message.board.error.isNextBoard");
messages.add(ActionMessages.GLOBAL_MESSAGE, message);
saveMessages(httpServletRequest, messages);
return actionMapping.findForward("delete");
}
else{
//写XML
Iterator iterator = factory.exportXMLInfo();
boardXML.writeXML(iterator);
return actionMapping.findForward("delete");
}
}
return actionMapping.findForward("continue");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -