ftssyang的gravatar头像
ftssyang2016-03-31 15:11:06

easyui+jdbc+xml模板开发自动化生成报表的java工具

ps:看到有同学问了一下问题,做一下答复,该实现不是web项目,大家只需要将代码集成到web项目中即可,原项目太大,不便上传。还有 jar包自己找啊 呵呵

采用easyui+jdbc+xml模板生成报表 不用写代码 只要配置 模板就可以 模板支持easyui元素 属性 超级简单、可扩展, 目前开源的报表工具不能生成查询条件在同一页面,必须弹出框数据查询信息 很不方便,商业的要好多钱。

1 报表界面配置xml 如下:

easyui+jdbc+xml模板开发自动化生成报表的java工具

2 引用sql语句

easyui+jdbc+xml模板开发自动化生成报表的java工具

3 生成界面如下  

页面可以设置 宽度 查询条件 每行显示几个元素  支持排序 等 详细见代码

easyui+jdbc+xml模板开发自动化生成报表的java工具

附件中少了 ExportExcel.java 类 代码如下

package com.framework.core.common.util;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ExportExcel {

	public static Workbook getWrokBook2007(List<Map<String, Object>> lists,
			String sheetName, LinkedHashMap<String, String> columns) {
		XSSFWorkbook book = new XSSFWorkbook();
		XSSFSheet sheet = book.createSheet(sheetName);
		if (org.apache.commons.collections.CollectionUtils.isNotEmpty(lists)) {
			writeExcelColumn(columns, sheet);
			writeExcelData(lists, sheet, columns);
		}
		return book;
	}
  

	private static void writeExcelData(List<Map<String, Object>> lists,
			XSSFSheet sheet, LinkedHashMap<String, String> columns) {
		int rowIndex = 1;
		for (Map<String, Object> map : lists) {
			XSSFRow row = sheet.createRow(rowIndex);
			int cellIndex = 0;
			for (Entry<String, String> entry : columns.entrySet()) {
				String key = entry.getKey();
				Object value = map.get(key);
				XSSFCell cell = row.createCell(cellIndex);
				if (null == (value)) {
					value = "";
				}
				cell.setCellValue(String.valueOf(value));
				cellIndex++;

			}

			rowIndex++;

		}
	}

	private static Map<String, String> writeExcelColumn(
			Map<String, String> columns, XSSFSheet sheet) {
		XSSFRow columnRow = sheet.createRow(0);
		int index = 0;
		for (Entry<String, String> entry : columns.entrySet()) {
			XSSFCell cell = columnRow.createCell(index);
			String key = entry.getKey();
			String column = columns.get(key);
			cell.setCellValue(column);
			index++;
		}
		return null;
	}
 
	
}

打赏

文件名:report.rar,文件大小:13.163K下载
最代码最近下载分享源代码列表最近下载
liuxuming7月25日
最代码贡献等级说明
charlesuncle7月8日
暂无贡献等级
test54577月1日
暂无贡献等级
kayok6月23日
最代码贡献等级说明
soul_bin6月14日
暂无贡献等级
pyy199408096月8日
暂无贡献等级
talkyun4月18日
暂无贡献等级
hanjinyu4月11日
暂无贡献等级
mrstarwei2月18日
最代码贡献等级说明
time20082016年12月22日
暂无贡献等级
最代码最近浏览分享源代码列表最近浏览
299157510小时前
最代码贡献等级说明
暂无贡献等级
cxliuyong前天
暂无贡献等级
mini672211月15日
暂无贡献等级
bubeilei11月15日
最代码贡献等级说明
小蜜蜂12311月14日
暂无贡献等级
myq_12311月12日
暂无贡献等级
liyongkui11月12日
最代码贡献等级说明
安安abc11月8日
暂无贡献等级
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友