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

📄 dboperation.java

📁 日志管理源代码
💻 JAVA
字号:
package com.log.util.page;

import java.util.*;
import java.sql.*;

import com.lzc.util.Tools;
import com.lzc.util.db.DBManager;

public class DbOperation { 
	private int pagecount = 0;// 每页显示纪录数

	private int pagenumber = 0;// 第几页

	private int allpagenumber = 0;// 总页数

	private int allrowcount = 0;// 总纪录数

	private String sqlquery = null;

	private String sqlorder = "";

	private String sqldescorder = "";

	private ResultSet rs = null;

	public int getPagecount() {
		return pagecount;
	}

	public int getAllrowcount() {
		return allrowcount;
	}

	public int getAllpagenumber() {
		return allpagenumber;
	}

	public String getSqlquery() {
		return sqlquery;
	}

	public void setPagenumber(int pagenumber) {
		this.pagenumber = pagenumber;
	}

	public void setPagecount(int pagecount) {
		this.pagecount = pagecount;
	}

	public void setAllrowcount(int allrowcount) {
		this.allrowcount = allrowcount;
	}

	public void setAllpagenumber(int allpagenumber) {
		this.allpagenumber = allpagenumber;
	}

	public void setSqlquery(String sqlquery) {
		this.sqlquery = sqlquery;
	}

	public void setSqlorder(String sqlorder) {
		this.sqlorder = sqlorder;
	}

	public int getPagenumber() {
		return pagenumber;
	}

	public String getSqlorder() {
		return sqlorder;
	}

	public DbOperation() {
	}

	/**
	 * 改变分页排序
	 * 
	 * @return String
	 */
	public void changeSqlOrder() {
		String orderchanged = "";
		String[] strorder = null;
		strorder = sqlorder.split(",");
		if (strorder.length > 0) {
			for (int i = 0; i < strorder.length; i++) {
				// logger.info(strorder[i].substring(strorder[i].length()-3,strorder[i].length()));
				if (strorder[i].length() < 3) {
					if (orderchanged.equals("")) {
						orderchanged = strorder[i] + " desc";
					} else {
						orderchanged = orderchanged + "," + strorder[i]
								+ " desc";
					}
				} else {
					if (strorder[i].substring(strorder[i].length() - 3,
							strorder[i].length()).equals("asc")) {
						if (orderchanged.equals("")) {
							orderchanged = strorder[i]
									.replaceAll("asc", "desc");
						} else {
							orderchanged = orderchanged + ","
									+ strorder[i].replaceAll("asc", "desc");
						}
					} else if (strorder[i].substring(strorder[i].length() - 3,
							strorder[i].length()).equals("esc")) {
						if (orderchanged.equals("")) {
							orderchanged = strorder[i]
									.replaceAll("desc", "asc");
						} else {
							orderchanged = orderchanged + ","
									+ strorder[i].replaceAll("desc", "asc");
						}
					} else {
						if (orderchanged.equals("")) {
							orderchanged = strorder[i] + " desc";
						} else {
							orderchanged = orderchanged + "," + strorder[i]
									+ " desc";
						}
					}
				}

			}
		}
		// logger.info("orderchanged = " +orderchanged);
		sqldescorder = orderchanged;
	}
	
	public int getRowCount() {
		int rowcount = 0;

		String sql = "";
		sql = "select count(0) as count ";
		sql = sql + " from (" + this.getSqlquery() + ") tb1";
		try {
			// System.out.println(sql);
			String[][] data = DBManager.getNewInstance("szhtp").query(sql,2,1);
			if(data.length>1){
				String count=Tools.getRsString("count", data, 1,"");
				rowcount=Integer.parseInt(count);
			}
		} catch (Exception e) {
			System.out.println("Error in getRowCount:"+e);
		}
		return rowcount;
	}

	public String[][] getPageList() {
		List list = new ArrayList();
		String[][]  data=null;
		int toplast = 0;
		// 总记录数
		int recordcount = getRowCount();

		String sql = "";
		// 最后一页显示记录数
		toplast = recordcount % pagecount;
		if (toplast == 0) {
			toplast = pagecount;
		}
		// 总页数
		int pages = 0;
		if (recordcount > 0) {
			pages = (recordcount - 1) / pagecount + 1;
		}
		this.setAllrowcount(recordcount);
		this.setAllpagenumber(pages);
		// System.out.println("allrowcount="+allrowcount);
		// System.out.println("allpagenumber="+allpagenumber);
		// if(toplast >0)
		String sqla = "";
		String sqlb = "";
		/*
		 * if(!"".equals(sqlwhere)){ sqlwhere = " where " + sqlwhere; }
		 */
		this.changeSqlOrder();
		sqla = "select top " + pagecount * this.getPagenumber() + " * from ("
				+ this.getSqlquery() + ") tb " + sqlorder;
		sqla = "(" + sqla + ") tb1 ";
		if (this.getPagenumber() >= allpagenumber) {
			sqlb = "select top " + toplast + " * from " + sqla + sqldescorder;
			sql = "select *  from (" + sqlb + ") tb2 " + sqlorder;
		} else {
			sqlb = "select top " + pagecount + " * from " + sqla + " "
					+ sqldescorder;
			sql = "select * from (" + sqlb + ") tb2 " + " " + sqlorder;
		}
		try {
			
			data=DBManager.getNewInstance("szhtp").query(sql,-1,1);
			
//			db_sql = new Db_sql();
//			rs = db_sql.query(sql);
//
//			if (rs != null) {
//				while (rs.next()) {
//					// System.out.println("this");
//					ResultSetMetaData rsmd = rs.getMetaData();
//					Map map = new HashMap();
//					for (int i = 1; i <= rsmd.getColumnCount(); i++) {
//						map.put(rsmd.getColumnName(i), rs.getObject(i));
//					}
//					list.add(map);
//				}
//			}

		} catch (Exception e) {
			System.out.println("sql:" + sql);
			System.out.println("Error in getPageList:" + e);
		}
		return data;
	}

}

⌨️ 快捷键说明

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