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

📄 searchaction.java

📁 一个不错的bbs论坛系统.对初学者很有帮助
💻 JAVA
字号:
package com.yhbbs.article.search.action;

import java.util.ArrayList;
import java.util.List;

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 com.yhbbs.article.search.bean.SearchResultIm;
import com.yhbbs.article.search.biz.BbsSearchIm;
import com.yhbbs.article.search.form.SearchForm;
import com.yhbbs.bbs.biz.BbsPropBiz;
import com.yhbbs.bbs.itface.Parameter;
import com.yhbbs.comm.Pages;
import com.yhbbs.user.itface.bean.UserSession;
import com.yhbbs.user.online.Postion;
import com.yhbbs.utils.Constants;
import com.yhbbs.utils.ReqUtils;

/**
 * <p>Title:论坛搜索Action</p>
 * <br>根据用户输入条件,开始搜索
 * <br><b>WebSite: www.yyhweb.com</b>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class SearchAction extends Action {
	private Parameter parameter;
	public SearchAction(){
		parameter = BbsPropBiz.getParameter();
	}
	public ActionForward execute(ActionMapping mapping,ActionForm form,
			  HttpServletRequest request,HttpServletResponse response) {
		ActionMessages errors = new ActionMessages();
		HttpSession session = request.getSession(true);
		UserSession us = (UserSession)session.getAttribute(Constants.bbsuser);
		int canGuest = parameter.getGuestSearch();//是否允许未登录用户使用论坛搜索功能
		if(canGuest==0 && us==null){
			errors.add("article.search.no.user",new ActionMessage("article.search.no.user"));
			saveErrors(request,errors);
			return mapping.findForward("Failure");
		}
		
		Postion.ChangPost(request,"查看搜索结果");
		SearchForm schForm = (SearchForm)form;
		String keyword = schForm.getKeyword();
		int authorpost = schForm.getAuthorpost();
		int author = schForm.getAuthor();
		int content = schForm.getContent();
		int postdate = schForm.getPostdate();
		int schfmId = schForm.getSchfmId();
		
		String link = "SearchAction.htm?authorpost="+authorpost+"&author="+author+"&content="+content+"&postdate="+postdate+"&schfmId="+schfmId;
		int curPage = ReqUtils.getInt(request,"curPage");
		int pagesize = parameter.getSearchPageSize();
		int start=0;
		if(curPage>1)      // 如果不是第一页,则从该页的第一条开始
		 	start = (curPage-1)*pagesize;
		
		SearchResultIm rs = BbsSearchIm.search(keyword,authorpost,author,content,postdate,schfmId,start,start+pagesize);
		Pages pages = new Pages(rs.getCount(), curPage,pagesize,link);
		List rslist =rs.getRslist();
		if(rslist==null)
			rslist = new ArrayList();
        request.setAttribute("start",(start+1));
        session.setAttribute("keyword",keyword);
        request.setAttribute("rslist",rslist);
        request.setAttribute("pageInfo",pages.getPageInfo());
		return mapping.findForward("Success");
		
	}
}

⌨️ 快捷键说明

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