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下载
最代码最近下载分享源代码列表最近下载
m7190674554月20日
最代码贡献等级说明
stevenkane4月16日
暂无贡献等级
jic4994月14日
暂无贡献等级
lkduhuan3月30日
暂无贡献等级
exaho123月29日
暂无贡献等级
CLATZJ3月13日
暂无贡献等级
guo20152月12日
暂无贡献等级
fellowfun1月31日
最代码贡献等级说明
暂无贡献等级
liqiaofeng2017年12月27日
暂无贡献等级
最代码最近浏览分享源代码列表最近浏览
m7190674554月20日
最代码贡献等级说明
stevenkane4月16日
暂无贡献等级
jic4994月14日
暂无贡献等级
ma87254月13日
暂无贡献等级
rg01054月11日
暂无贡献等级
ysyxlnm4月8日
最代码贡献等级说明
ghsjdgfskaj4月3日
暂无贡献等级
每个部分4月2日
暂无贡献等级
肖建3月31日
最代码贡献等级说明
huangzhimin3月30日
最代码贡献等级说明
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友