JasperReport制作行内容合并的表格
效果图:

实现思路一:
交叉表
另一个思路:
普通表格
缺点:无法实现内容 垂直居中显示
准备工作
一、数据准备
DROP TABLE IF EXISTS `address_item_sex_value`;
CREATE TABLE `address_item_sex_value` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`address` varchar(255) DEFAULT NULL,
`sex` varchar(255) DEFAULT NULL,
`item` varchar(255) DEFAULT NULL,
`value` int(11) DEFAULT NULL,
`proportion` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of address_item_sex_value
-- ----------------------------
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '男生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '男生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '男生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '女生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '女生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '女生', '指标1', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '男生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '男生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '男生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '女生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '女生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '女生', '指标2', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '男生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '男生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '男生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '女生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '女生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '女生', '指标3', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '男生', '指标4', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '男生', '指标4', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '男生', '指标4', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '城区', '女生', '指标4', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '远郊', '女生', '指标4', '', '');
INSERT INTO `address_item_sex_value` VALUES ('', '近郊', '女生', '指标4', '', '');
二、设置SQL与字段
SELECT report.address_item_sex_value.id,
report.address_item_sex_value.address,
report.address_item_sex_value.sex,
report.address_item_sex_value.item,
report.address_item_sex_value.value,
1 a
FROM report.address_item_sex_value order by report.address_item_sex_value.address
SQL中有一个空闲的字段a、有一个默认值。很重要、是为了X轴的交叉表做考虑
三、设计列表
设置横列

1、选择字段a
2、设置total(按需要、这里不需要汇总列)
设置竖列

设置交叉值

四、设计显示
删除横列值

设置Column groups高度

设置高度为 0px

效果图

设置 水平居中、垂直居中

表头部分说一下
表头放在ColumnHeader里面,按需自己组装即可。

最终效果图

JasperReport制作行内容合并的表格的更多相关文章
- Expression构建DataTable to Entity 映射委托 sqlserver 数据库里面金额类型为什么不建议用float,实例告诉你为什么不能。 sql server 多行数据合并成一列 C# 字符串大写转小写,小写转大写,数字保留,其他除外 从0开始用U盘制作启动盘装Windows10系统(联想R720笔记本)并永久激活方法 纯CSS打造淘宝导航菜单栏 C# Winform
Expression构建DataTable to Entity 映射委托 1 namespace Echofool.Utility.Common { 2 using System; 3 using ...
- 编辑表格输入内容、根据input输入框输入数字动态生成表格行数、编辑表格内容提交传给后台数据处理
编辑表格输入内容.根据input输入框输入数字动态生成表格行数.编辑表格内容提交传给后台数据处理 记录自己学习做的东西,写的小demo,希望对大家也有帮助! 代码如下: <!DOCTYPE ht ...
- javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行
jsp页面表格布局Html代码 <body onload="show()"> <center> <input type="text" ...
- 使用Notepad++将多行数据合并成一行
1.按Ctrl+F,弹出“替换”的窗口: 2.选择“替换”菜单: 3.“查找目标”内容输入为:\r\n: 4.“替换为”内容为空: 5.“查找模式”选择为正则表达式: 6.设置好之后,点击“全部替换” ...
- Java导出数据行写入到Excel表格:基于Apache POI
Java导出数据行写入到Excel表格:基于Apache POI import java.io.File; import java.io.FileOutputStream; import org.ap ...
- excel单元格内容合并
这几天在整理数据,有时候数据都在表格的不同单元格中,想把两格内容合并为一格,于是验证了两种方法 方法一: (1)在B1输入公式=A1&B1 (2)做完第一步后,选中B1后,鼠标移到单元格右下出 ...
- SQL将多行数据合并成一行【转】
转:https://blog.csdn.net/AntherFantacy/article/details/83824182 今天同事问了一个需求,就是将多行数据合并成一行进行显示,查询了一些资料,照 ...
- WPF设置DataGrid行内容高度自适应 与 TextBox/TextBlock内容高度自适应
WPF设置DataGrid行内容高度自适应 TextBox/TextBlock内容高度自适应 参考: DataGrid 控件中的调整大小选项: http://msdn.microsoft.com/ ...
- 关于SQL Server将一列的多行内容拼接成一行的问题讨论
http://blog.csdn.net/rolamao/article/details/7745972 昨天遇到一个SQL Server的问题:需要写一个储存过程来处理几个表中的数据,最后问题出在我 ...
随机推荐
- Simplest Python K-Way Merging Sort|最简单的Python k路归并排序
想做这个好长时间了,因为有一篇Dreamworks的论文<Coherent Out-of-Core Point-Based Global Illumination>提到了这个,一直没时间做 ...
- DAY4(python)打印字符串以及增删改查
用while循环打印字符串 #if i in s: # print ( i ) s='nanfjkhndaol' index = 0 while 1 : print (s[index]) index+ ...
- seajs的原理以及基本使用
seajs模块化开发 模块化开发,把整个文件分割成一个一个小文件. 使用方法 使用方法特别简单,首先在官网中下载sea.js,然后在页面中引入. index.html // 1.路径 // 2.回调 ...
- float、double、BigDecimal的一些精度问题
float f = 280.8f;System.out.println(f*100);结果是什么?结果是:28080.0f(我是这么想的)实际结果是:28079.998 既然float处理有问题换do ...
- python使用sax实现xml解析
之前在使用xml解析的时候,在网上搜了很多教程,最终没有能按照网上的教程实现需求. 所以呢,只好自己去看源码,在sax的__init__.py下看到这么一段代码: 1 def parse(source ...
- 适配器Adapter
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/3/4 22:13 # @Author : ChenAdong # @emai ...
- MyBatis笔记----报错:Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ij34/mybatis/applicationContext.xml]: Invocation of init method failed; nested exception is org.sp
四月 05, 2017 4:51:02 下午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRef ...
- HTML表单 CSS样式
1.HTML表单 <body rightmargin="50" leftmargin="50" background="未标题-1.jpg&qu ...
- Linux常用命令-文本查看篇
前言 Linux常用命令中,除了cat还有很多其他用于文本查看的命令.本文将简单介绍一下这些文本查看的命令. 全文本显示--cat cat可能是常用的一个文本查看命令了,使用方法也很简单: cat f ...
- ubuntu下定时任务的执行
概述 linux系统由 cron (crond) 这个系统服务来控制例行性计划任务.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的. 另外, 由于使用者自己也可以设置计划 ...