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

📄 inittag.java

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

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import org.apache.log4j.Logger;
import com.yhbbs.bbs.biz.BbsPropBiz;
import com.yhbbs.bbs.itface.BbsProp;
import com.yhbbs.status.bean.BBsTimeIm;
import com.yhbbs.status.itface.BBsTime;
import com.yhbbs.user.bean.OsBrowser;
import com.yhbbs.user.bean.UserSessionIm;
import com.yhbbs.user.biz.UserBiz;
import com.yhbbs.user.itface.bean.UserSession;
import com.yhbbs.utils.Constants;
import com.yhbbs.utils.DateUtils;
/**
 * <p>Title:论坛初始化标签</p>
 * <br><b>WebSite: www.yyhweb.com</b>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class InitTag extends TagSupport{

	private static final long serialVersionUID = 1L;

	private static Logger bbslog = Logger.getLogger(InitTag.class);
	private static String bbswidth = "";
	private static String bbsName = "";
	private static String description = "";
	private static BbsProp bbsprop = null;
	
	public int doStartTag() throws JspException {
		HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
		bbsProp(request);
		processTime(request);
	    return 0;
	}
	
	/** 论坛处理时间
	 * @param request
	 */
	public void processTime(HttpServletRequest request) {
		BBsTime runtime = (BBsTime)request.getAttribute("bbstime");
		if(runtime==null){
			runtime = BBsTimeIm.getInstance();
			request.setAttribute("bbstime",runtime);
		}
		runtime.setStartTime(System.currentTimeMillis());
	}
	
	/** 论坛系统属性
	 * @param request
	 */
	public void bbsProp(HttpServletRequest request){
		bbsprop = BbsPropBiz.getBbsProp();
		bbswidth = bbsprop.getBbswidth();
		bbsName = bbsprop.getName();
		description = bbsprop.getDescription();
		
		request.setAttribute("bbswidth",bbswidth);
		request.setAttribute("bbsname",bbsName);
		request.setAttribute("description",description);
	}
	
	public int doEndTag() throws JspException {
	   try {  
	    	 HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
	    	 
	    	 HttpSession session = request.getSession(true);
	    	 UserSession bbsguest = (UserSession) session.getAttribute("bbsguest");
	    	 UserSession bbsuser = (UserSession) session.getAttribute("bbsuser");
	    	 if(bbsuser==null)
	    		 getCookie(request);
	    	 
	    	 bbsuser = (UserSession) session.getAttribute("bbsuser");
	    	 if(bbsguest==null && bbsuser==null){
	    			 UserSession user = new UserSessionIm();
	    			 String curTime = DateUtils.getCurFormatDate(Constants.dateFL);
		    		 user.setUserId(0);
		    		 user.setUsername("游客");
		    		 user.setUsertype(0);
		    		 user.setIslock("1");
		    		 user.setActivetime(curTime);
		    		 user.setLogintime(curTime);
		    		 user.setPostion("论坛首页");
		    		 user.setBrowser(OsBrowser.getUserBrowser(request.getHeader("User-Agent")));
		    		 user.setOs(OsBrowser.getUserOs(request.getHeader("User-Agent")));
		    		 user.setIp(request.getRemoteAddr());
		    		 session.setAttribute("bbsguest",user);
	    	 }
	    	 
	     }catch(Exception e) {
	            bbslog.error("InitTag tag's doEndTag error!");
	     }
	     return 6;
	 }
	
	/**
	 * @return 取得系统快宽度
	 */
	public static String getBbswidth() {
		return bbswidth;
	}
	
	/**
	 * @return 取得系统名称
	 */
	public static String getBbsName() {
		return bbsName;
	}
	
	/**
	 * @return 取得系统属性类
	 */
	public static BbsProp getBbsprop() {
		return bbsprop;
	}
	
	public void getCookie(HttpServletRequest request){
		int userId = UserBiz.userLogin(request);
		if(userId>0){
			 String ltime = DateUtils.getCurFormatDate(Constants.dateFL);
			 UserSession cookieuser = new UserSessionIm();
			 cookieuser = UserBiz.getOnlineUser(userId);
			 cookieuser.setIp(request.getRemoteAddr());
			 cookieuser.setForumid(0);
			 cookieuser.setActivetime(ltime);
			 cookieuser.setLogintime(ltime);
			 cookieuser.setPostion("论坛首页");
			 cookieuser.setBrowser(OsBrowser.getUserBrowser(request.getHeader("User-Agent")));
			 cookieuser.setOs(OsBrowser.getUserOs(request.getHeader("User-Agent")));
			 request.getSession(true).setAttribute(Constants.bbsuser,cookieuser);
		}
	}
}

⌨️ 快捷键说明

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