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

📄 pagebaseaction.java

📁 JEECMS是JavaEE版网站管理系统(Java Enterprise Edition Content Manage System)的简称。 基于java技术开发
💻 JAVA
字号:
package com.jeecms.core;

import net.sf.ehcache.Cache;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;

@SuppressWarnings("unchecked")
public abstract class PageBaseAction extends IntegrityAction {
	public static final String INDEX = "index";
	public static final int HOMEPAGE_CACHE = 1;
	public static final int CHANNEL_CACHE = 2;
	public static final String PAGE_CACHE_RESULT = "pageCache";

	private void handlePathParams() {
		len = pathParams.length;
		pathName = pathParams[0];
		pageName = pathParams[len - 1];
		int lineIndex = pageName.indexOf("_");
		if (lineIndex != -1) {
			pageRaw = pageName.substring(0, lineIndex);
		} else {
			pageRaw = pageName;
		}
	}

	@Override
	public String execute() throws Exception {
		handlePathParams();
		pageName = pathParams[len - 1];
		if (len == 1 && pageRaw.equals(INDEX)) {
			// 首页
			return sysIndex();
		} else if (len == 1 && StringUtils.isNumeric(pageRaw)) {
			// 内容
			return content(null, Long.parseLong(pageRaw));
		} else if (len == 1) {
			return alone(pageName);
		} else if (len == 2 && pageRaw.equals(INDEX)) {
			return chnlIndex(pathName);
		} else if (len == 2 && StringUtils.isNumeric(pageRaw)) {
			return content(pathName, Long.parseLong(pageRaw));
		} else {
			throw new RuntimeException("访问路径不存在");
		}
	}

	/**
	 * 系统首页
	 */
	protected abstract String sysIndex();

	/**
	 * 栏目页
	 */
	protected abstract String chnlIndex(String chnlName);

	/**
	 * 内容页
	 */
	protected abstract String content(String chnlName, Long id);

	/**
	 * 单页
	 */
	protected abstract String alone(String chnlName);

	protected String[] pathParams;
	protected int len = 0;
	protected String pathName;
	protected String pageName;
	protected String pageRaw;

	@Autowired
	@Qualifier("homepage")
	protected Cache homepageCache;
	protected Long ckHomepage;

	@Autowired
	@Qualifier("channel")
	protected Cache channelCache;
	protected String ckChannel;

	protected int cacheType;

	public void setPathParams(String[] pathParams) {
		this.pathParams = pathParams;
	}

	public void setWholeUrl(String wholeUrl) {
		this.wholeUrl = wholeUrl;
	}

	public void setPageLink(String pageLink) {
		this.pageLink = pageLink;
	}

	public void setPageSuffix(String pageSuffix) {
		this.pageSuffix = pageSuffix;
	}

	public void setPageNo(int pageNo) {
		this.pageNo = pageNo;
	}

	public Long getCkHomepage() {
		return ckHomepage;
	}

	public void setCkHomepage(Long ckHomepage) {
		this.ckHomepage = ckHomepage;
	}

	public String getCkChannel() {
		return ckChannel;
	}

	public void setCkChannel(String ckChannel) {
		this.ckChannel = ckChannel;
	}

	public int getCacheType() {
		return cacheType;
	}

	public void setCacheType(int cacheType) {
		this.cacheType = cacheType;
	}
}

⌨️ 快捷键说明

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