Jasper Report 中的 Java Beans 列表中的 pass 列表

2024-04-01

我正在使用 Jasper Report 和 Servlet。 Bean 团队看起来像

private int tid;
private String title;
private List<Member> members;
//getter and setter

成员bean看起来像

private int id;
private String name;
//getter and setter

在报告 Servlet 中,

 List<Team> teams = service.getTeams();
 Map parameters = new HashMap();
 JasperPrint jasperPrint = null;
 jasperPrint  = JasperFillManager.fillReport(jasperReport, parameters, new JRBeanCollectionDataSource(teams));

当在新的 JRBeanCollectionDataSource(teams) 中添加团队时,如何在 Jasper 报告中显示它?因为List中包含List。

我需要子报告来解决这个问题吗?

或者我可以在没有子报告的情况下解决这个问题吗?


有两种方法可以实现此目的:

带子报告

您确实可以通过使用子报表来解决这个问题。为此,您需要添加一个子报表并将其数据源表达式设置为new JRBeanCollectionDataSource($F{members})。你的领域Member然后 bean 将可用作子报告中的字段(例如$F{name}).

带有列表组件

您还可以使用列表组件在没有子报表的情况下解决此问题。这可以从 iReport 的调色板中获得,或者您可以复制下面的示例。需要将其添加到报告的详细信息区域中。

列表组件有一个数据源表达式,就像报表一样,您应该将其设置为new JRBeanCollectionDataSource($F{members}),并且有一个listContents行为类似于子报表的详细信息区域的元素;对于数据源中的每个成员,其中的元素都会重复一次。

列表组件需要在您的报表中添加一个子数据集,但这将由 iReport 自动添加,或者您可以轻松添加一个空数据集:<subDataset name="dataset1"/>.

<componentElement>
    <reportElement x="0" y="0" width="555" height="20"/>
        <jr:list xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
        <datasetRun subDataset="dataset1">
            <dataSourceExpression><![CDATA[new JRBeanCollectionDataSource($F{members})]]></dataSourceExpression>
        </datasetRun>
        <jr:listContents height="20" width="555">
            <textField>
                <reportElement x="0" y="0" width="100" height="20"/>
                <textElement/>
                <textFieldExpression><![CDATA[$F{name}]]></textFieldExpression>
            </textField>
        </jr:listContents>
    </jr:list>
</componentElement>

有关列表组件的更多信息,请参见此处:http://jasperreports.sourceforge.net/sample.reference/list/index.html http://jasperreports.sourceforge.net/sample.reference/list/index.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jasper Report 中的 Java Beans 列表中的 pass 列表 的相关文章

随机推荐

  • 单击带有最新更新的 EditText 时应用程序崩溃(gradle 4.4 - android studio 3.1)

    我最近将我的 android studio 更新到版本 3 1 并将我的 gradle 更新到版本 4 4 从那时起 我一直面临着应用程序在点击某个按钮时进入 ANR 的问题EditText这应该会弹出一个软输入键盘 单击EditText我
  • Ajax 调用不会更新我的行

    我想用字符的 id 更新我的数据库 但是当我将它们放入插槽中时 它不会更新我想要更新的行 我的问题是 你能为我指明如何正确编码或修复我的错误的正确方向吗 function updateTeam var team slot if input
  • 在.Net 中使用 Scala 有什么好处?

    Scala 是一种特殊的编程语言 因为它同时针对 JVM 和 CLR 但有什么好处呢 是否值得将其视为 F 语言的可行替代方案 NET 上的 Scala 是 Miguel Garcia 领导的一项持续努力 最新状态是我们几乎能够在 NET
  • While 循环重置 Bash 脚本中的数字变量[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个简单的 bash 脚本来在一组文件夹中的每个文件中执行某些操作 我还喜欢计算脚本读取了多少个文件 但是当脚本通过循环时 数值变量会被重置 我正在使用的代码是这样的 bin bash let AU
  • 有没有办法获取给定的classes.dex 文件中的类名?

    我正在构建一个家庭自动化应用程序 我正在尝试添加一个插件系统 作为测试 我将测试类 Button 的子类 导出为 APK 文件 并将其放入我的应用程序的文件目录中 我能够创建此类的新实例并将其放入我的视图中使用DexClassLoader
  • 绘制直方图的峰值

    我试图弄清楚如何使用绘制简单直方图的峰值scipy signal find peaks但发现的峰值似乎还很遥远 ages np array 10 5 22 13 50 45 67 30 21 34 60 67 89 45 45 65 his
  • HTTP 是否使用 UDP?

    这可能是一个愚蠢的问题 HTTP 是否使用过用户数据报协议 例如 如果使用 HTTP 传输 MP3 或视频 它内部是否使用 UDP 进行传输 From RFC 2616 http www ietf org rfc rfc2616 txt 通
  • 可以使用数据流将 pubsub 消息重复数据删除回 pubsub 吗?

    我有一个将数据写入 Google Cloud pubsub 的应用程序 根据 pubsub 的文档 由于重试机制而导致的重复偶尔可能会发生 还有消息乱序的问题 这在 pubsub 中也得不到保证 另外 根据文档 可以使用 Google Cl
  • 表设计+SQL问题

    我有一个餐桌食品吧 是使用以下 DDL 创建的 我使用的是mySQL 5 1 x CREATE TABLE foodbar id INT NOT NULL AUTO INCREMENT user id INT NOT NULL weight
  • 动态创建 Laravel Request 对象

    我正在一个控制器中处理数据 并希望将其进一步传递到另一个控制器中以避免重复代码 有没有办法设置另一个控制器中需要的 Request 对象store 方法 我追踪了 Request 继承并找到了 Symfony 的 Request 对象 它有
  • Java事件和事件监听器[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我在 Google 上搜索以了解如何
  • 证明特定矩阵存在

    我在编程论坛 Ohjelmointiputka 中发现了这个问题 https www ohjelmointiputka net postit tehtava php tunnus ahdruu https www ohjelmointipu
  • Dart:从字符串创建方法

    我一直在尝试使用 Dart 从字符串动态创建方法 但没有成功 字符串示例 String str gt return str length 这个想法是允许用户创建自己的函数来应用于给定的字符串 我发现的唯一的东西是 NoSuchMethod
  • PrintSystemJobInfo.JobStream 是否损坏?

    我从目标打印机获取队列并浏览其上的作业列表 当作业不是 IsSpooling 时 我尝试读取 JobStream 以查看打印作业 到目前为止 JobStream 一直为 null 我的打印内容来自 DOS 应用程序 应该是纯文本 我已经暂停
  • C 中带括号和不带括号的循环处理方式不同吗?

    我在调试器中单步执行一些 C CUDA 代码 如下所示 for uint i threadIdx x i lt 8379 i 256 sum d PartialHistograms blockIdx x i HISTOGRAM64 BIN
  • 当我运行多个测试时,Django LiveServerTestCase 无法加载页面

    我正在尝试在一个 Django LiveServerTestCase 中运行多个测试 当我运行任何单个测试 其他人评论 时 一切都会按预期进行 但是 当我通过两个测试运行测试用例时 第一个测试工作正常 但第二个测试加载带有 内部服务器错误
  • 具有嵌套属性的 Best_In_Place 内联编辑

    我目前正在尝试使用 best in place gem 来在 HTML 表中进行内联编辑 我正在购物车的显示视图中显示购物车 在购物车的显示视图中 我可以添加订单项 创建 LineItem 时 还会创建一个带有 lineItem id 的新
  • 标记文本解析器,如 Objective-C 中的 stackoverflow 格式化程序

    我正在使用 Objective C 创建标记编辑器 我需要以下功能 识别块的分界 例如 block 删除开始和结束 标签 例如 下一个文本是 bold 变为 下一个文本为粗体 确定新上下文中标记文本的开始和结束位置 下一个文本是粗体 编辑
  • 多种类型实体的数据库设计

    我需要开发一个应用程序 其中有 4 种类型的用户实体 管理员 合作伙伴 公司和客户 每种用户类型都有自己的一组详细信息 并且他们都应该能够执行常见操作 例如发送消息 付款等等 这些操作应保留在单个表中 但它们需要引用确切的用户 无论其类型如
  • Jasper Report 中的 Java Beans 列表中的 pass 列表

    我正在使用 Jasper Report 和 Servlet Bean 团队看起来像 private int tid private String title private List