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

📄 topicaction.java

📁 该系统利用Java实现简单论坛功能
💻 JAVA
字号:
/*
/*主题
*/
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 javax.servlet.ServletContext;
import javax.sql.DataSource;
import java.util.Vector;
import ch11.form.*;
import ch11.util.*;
import ch11.bean.*;

public final class TopicAction extends Action{  
	public ActionForward execute(
		ActionMapping mapping,
		ActionForm form,
		HttpServletRequest request,  
		HttpServletResponse response) throws Exception {
		//获取表单信息
   		SortForm sortform = (SortForm) form;   		        
		int sortid = sortform.getSortid();
		String sortname =sortform.getSortname();			
			//new String(sortform.getSortname().getBytes("iso8859_1"),"gb2312");
		int pageid = sortform.getPageid();
		if (pageid<0){
			pageid = 0;	
		}		
        HttpSession session = request.getSession(true);
		Vector topics = new Vector();
		Topic topic;
		//连接数据库
   		ServletContext context = servlet.getServletContext();
		DataSource dataSource = 
			(DataSource)context.getAttribute(Constants.DATASOURCE_KEY);
        DB db = new DB(dataSource);
        TopicDisp topicdisp = new TopicDisp();
        //获取分页显示的对应分类记录信息,并根据结果不同转向不同的页面
		String PageForward;
		ActionMessages errors = new ActionMessages();
        if (topicdisp.GetTopicCount(db,sortid)==0){
			session.setAttribute(Constants.TOPIC_LIST_KEY,topics);
			session.setAttribute(Constants.CUR_SORTID_KEY,new Integer(sortid));
			session.setAttribute(Constants.CUR_SORTNAME_KEY,sortname);
			session.setAttribute(Constants.CUR_PAGEID_KEY,new Integer(pageid));
  			PageForward="toTopic";  
        }
        else if (topicdisp.GetTopicCount(db,sortid)<pageid * Constants.TOPIC_PAGE_SIZE + 1){
        	pageid--;
            errors.add(ActionMessages.GLOBAL_MESSAGE,
                           new ActionMessage("errors.pageEnd"));
			if (!errors.isEmpty()) {
				saveErrors(request, errors);
			} 
 			PageForward="toWrong";  
		}
		else{
        	topicdisp.setSortid(sortid);
			topics = topicdisp.search(db,pageid);
			session.setAttribute(Constants.TOPIC_LIST_KEY,topics);
			session.setAttribute(Constants.CUR_SORTID_KEY,new Integer(sortid));
			session.setAttribute(Constants.CUR_SORTNAME_KEY,sortname);
			session.setAttribute(Constants.CUR_PAGEID_KEY,new Integer(pageid));
  			PageForward="toTopic";
       }
		db.close();
	   	return (mapping.findForward(PageForward));
 	}
}

⌨️ 快捷键说明

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