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

📄 pagehitreport.java

📁 java swing源码 欢迎下载 有问题请联系 我一定负责到底
💻 JAVA
字号:
/**
 * 点击率报表
 */
package com.NCL.excel;

import java.io.File;
import java.util.*;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import com.NCL.axis.axisType;
import com.sinosoft.common.*;

public class PageHitReport{
	
	public List strList = new ArrayList();
	
	/**
	 * 点击率报表-年报
	 * @param ReportTime
	 * @return
	 */
	public List findYearReport(String ReportTime){
		if(!Data.hasValue(ReportTime) || ReportTime.length()!=4)return null;
		Document documentInput =null;	
		Element PageDicInfo = null;
		Iterator str = null;
		SAXReader reader = new SAXReader();
		String fileName = axisType.class.getResource("").getPath().replaceAll("/WEB-INF/classes/com/NCL/axis", "").replaceAll("%20", " ") + "global/xml/";
		fileName += "pageDictionary.xml";
		try {
			documentInput = reader.read(new File(fileName));
			Element ele = documentInput.getRootElement();
			PageDicInfo = ele.element("PageDicInfo");
			str = PageDicInfo.elementIterator();
		} catch (DocumentException e) {
			e.printStackTrace();
		}
		String sql = "";
		DBAccess d = new DBAccess();
		List l = new ArrayList();
		while(str.hasNext()){                 //得到pageid和pagename
			String tmp = ((Element)str.next()).getName();
			if(tmp.startsWith("Page")){
				l.add(tmp.substring(4, tmp.length()));
				Element pEle = PageDicInfo.element(tmp);
				l.add(getEleText(pEle,"PageName"));
			}
		}
		if(l==null || l.size()==0)return null;
		strList = l;
		sql = "select (";
		for(int i=0;2*i<l.size();i++){
			int tmpPageID = Integer.parseInt((String)l.get(2*i));
			sql += "select Count(pageid) from pagehits"
					+ " where" 
					+ " makeDate>=to_date('"+ReportTime+"-' || a.nu ,'yyyy-MM')"
					+ " and makeDate<Add_Months(to_date('"+ReportTime+"-' || a.nu ,'yyyy-MM'),1)"
					+ " and pageid= "+tmpPageID
					+ " group by pageid"
					+ " ) as AAA"+i+",(";
		}
		sql = sql.substring(0,sql.length()-2);
		sql += " from months a Where nu<=12 and nu>=1";
		return d.mulparseSQL(sql, new ArrayList());
	}
	
	/**
	 * 点击率报表-月报
	 * @param ReportTime
	 * @return
	 */
	public List findMonthReport(String ReportTime){
		if(!Data.hasValue(ReportTime) || ReportTime.length()!=7)return null;
		Document documentInput =null;	
		Element PageDicInfo = null;
		Iterator str = null;
		SAXReader reader = new SAXReader();
		String fileName = axisType.class.getResource("").getPath().replaceAll("/WEB-INF/classes/com/NCL/axis", "").replaceAll("%20", " ") + "global/xml/";
		fileName += "pageDictionary.xml";
		try {
			documentInput = reader.read(new File(fileName));
			Element ele = documentInput.getRootElement();
			PageDicInfo = ele.element("PageDicInfo");
			str = PageDicInfo.elementIterator();
		} catch (DocumentException e) {
			e.printStackTrace();
		}
		String sql = "";
		DBAccess d = new DBAccess();
		List l = new ArrayList();
		while(str.hasNext()){                 //得到pageid和pagename
			String tmp = ((Element)str.next()).getName();
			if(tmp.startsWith("Page")){
				l.add(tmp.substring(4, tmp.length()));
				Element pEle = PageDicInfo.element(tmp);
				l.add(getEleText(pEle,"PageName"));
			}
		}
		if(l==null || l.size()==0)return null;
		strList = l;
		sql = "select (";
		for(int i=0;2*i<l.size();i++){
			int tmpPageID = Integer.parseInt((String)l.get(2*i));
			sql += "select Count(pageid) from pagehits"
					+ " where" 
					+ " makeDate>=to_date('"+ReportTime+"-' || a.nu ,'yyyy-MM-dd')"
					+ " and makeDate<=to_date('"+ReportTime+"-' || a.nu ||' 23:59:59','yyyy-MM-dd hh24:mi:ss')"
					+ " and pageid= "+tmpPageID
					+ " group by pageid"
					+ " ) as AAA"+i+",(";
		}
		sql = sql.substring(0,sql.length()-2);
		sql += " from months a where rownum <= to_number(to_char(Last_Day(to_date('"+ReportTime+"','yyyy-MM')),'dd')) order by nu";
		return d.mulparseSQL(sql, new ArrayList());
	}
	
	/**
	 * 获取pEle中getName字段的值
	 * @param pEle
	 * @param getName
	 * @return
	 */
	private String getEleText(Element pEle,String getName){
		String getText = "";
		try{
			getText = pEle.element(getName).getText();
		}catch(Exception e){
			System.out.println("PageHitCount.getEleText():" + e.getMessage());
			return "";
		}
		return getText;
	}
}

⌨️ 快捷键说明

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