gpt4 book ai didi

java - 如何获取我的java bean中嵌套对象的值?

转载 作者:行者123 更新时间:2023-11-30 05:48:22 25 4
gpt4 key购买 nike

我需要显示billingAddress这是我的主要信息 CustomerJ目的。

我没有找到如何显示billingAddress.address1的语法等等......

JRXML:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 -->
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="pulpshred_invoice" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="ebbcad6c-5106-41cb-964f-6fd5ea27b8ae">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
<subDataset name="Dataset1" uuid="bf97abbf-b160-4edf-b066-3746fc307fed">
<queryString>
<![CDATA[]]>
</queryString>
</subDataset>
<subDataset name="Dataset2" whenResourceMissingType="Empty" uuid="89cd64cb-59ea-4557-bf42-10b7e21a22a1">
<queryString>
<![CDATA[]]>
</queryString>
<field name="address" class="java.lang.String"/>
</subDataset>
<queryString>
<![CDATA[]]>
</queryString>
<field name="customerId" class="java.lang.String"/>
<field name="billingAddress" class="java.lang.Object"/>
<group name="Group1">
<groupExpression><![CDATA[$F{billingAddress}]]></groupExpression>
<groupFooter>
<band height="50"/>
</groupFooter>
</group>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch">
<image scaleImage="FillFrame" hAlign="Left" vAlign="Top">
<reportElement x="60" y="10" width="110" height="40" uuid="c017b894-515d-47f5-a3c0-3c5e23928229"/>
<imageExpression><![CDATA["http://www.pulpshred.com/images/logo.png"]]></imageExpression>
</image>
<staticText>
<reportElement x="410" y="5" width="141" height="74" forecolor="#15AB3A" uuid="ff489075-f753-4219-8372-b9c28de85b1c"/>
<textElement textAlignment="Center">
<font isBold="true"/>
</textElement>
<text><![CDATA[6, 1815-27 Avenue NE
Calgary, AB T2E 7E1
403.453.9009
info@pulpshred.com
www.pulpshred.com
]]></text>
</staticText>
</band>
</title>
<detail>
<band height="447" splitType="Stretch">
<staticText>
<reportElement x="40" y="10" width="100" height="30" forecolor="#878677" uuid="42270711-0246-4d09-b669-14d193242303"/>
<textElement>
<font size="14"/>
</textElement>
<text><![CDATA[INVOICE]]></text>
</staticText>
<staticText>
<reportElement x="181" y="25" width="130" height="15" uuid="ba506752-394d-4988-871c-dda01f2667d4"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Customer ID/Name]]></text>
</staticText>
<staticText>
<reportElement x="181" y="40" width="130" height="15" uuid="af718b31-50a3-4594-8779-928f8e3da762"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Invoice Number:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="55" width="130" height="15" uuid="6540067a-b64c-4d41-a345-033726b244c8"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Invoice Date:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="70" width="130" height="15" uuid="5d3ebb96-9951-494f-b1f2-58ff254e9a41"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Service Period:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="85" width="130" height="15" uuid="f9fcf936-4d48-435b-9778-38bd34bf7a02"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Payment Terms:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="115" width="130" height="15" uuid="ee090972-2fcf-4e76-972b-55791c761222"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Invoice Receipt Preference:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="100" width="130" height="15" uuid="29505397-40d9-4740-a99d-89f3adf32df7"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Payment Due By:]]></text>
</staticText>
<staticText>
<reportElement x="181" y="130" width="130" height="15" uuid="b6551ecc-d3c5-47e5-b6d5-197475f18515"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Payment Method Preference]]></text>
</staticText>
<textField>
<reportElement x="311" y="25" width="234" height="15" uuid="b3b2a4e1-2699-4322-8ae1-42b08b24ce0f"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="40" width="234" height="15" uuid="7bffdbf8-9271-42f6-ac9e-baf2da399ab4"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="55" width="234" height="15" uuid="5884d3b9-3239-4d2e-af3e-ee5163da3d3b"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="70" width="234" height="15" uuid="a0c9a4e0-c3d8-4545-b8d1-76c8002cb717"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="115" width="234" height="15" uuid="721b93c4-5673-4d5b-964e-999b84758521"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="85" width="234" height="15" uuid="1ab2f0d8-d7c2-44bd-b134-edb62c603c1f"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="100" width="234" height="15" uuid="39ac956b-58b8-40ec-ada1-3893e5537ab9"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="130" width="234" height="15" uuid="b7f94697-d648-404a-ba33-66fe7dca95ab"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="311" y="145" width="234" height="15" uuid="eb9bd1fd-04bd-4bae-9848-ea232a657be0"/>
<box topPadding="0" leftPadding="0" bottomPadding="0" rightPadding="4">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Right">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<staticText>
<reportElement mode="Opaque" x="181" y="10" width="364" height="15" forecolor="#000000" backcolor="#878677" uuid="972ae8ee-1b48-4706-ac91-a4b43a076769"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font isBold="true"/>
</textElement>
<text><![CDATA[Account Overview]]></text>
</staticText>
<staticText>
<reportElement x="181" y="145" width="130" height="15" uuid="22ee9958-5339-4e19-9abe-061a071a19ec"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[PULP SHRED GST Number:]]></text>
</staticText>
<line>
<reportElement x="0" y="0" width="551" height="1" uuid="ca671c9b-fbbd-435c-8bc1-b209fb7b2a10"/>
</line>
<textField>
<reportElement x="320" y="240" width="224" height="15" uuid="94506dd4-f4a1-4b1b-a92b-c39e95e2c3f3"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="320" y="255" width="224" height="15" uuid="1b7d7169-4819-4206-b64e-32a94080e976"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<staticText>
<reportElement mode="Opaque" x="110" y="180" width="210" height="15" forecolor="#FFFFFF" backcolor="#878677" uuid="e88d7f5b-9647-4c5c-ac14-a521aaeb656a"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font isBold="true"/>
</textElement>
<text><![CDATA[Billing Address]]></text>
</staticText>
<textField>
<reportElement x="320" y="225" width="224" height="15" uuid="df5db5a0-7178-4ff7-9806-25377d2bab05"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="320" y="195" width="224" height="15" uuid="4c99c203-8869-49c2-93b5-c9a91668b2c7"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="320" y="210" width="224" height="15" uuid="924ff165-553b-48e0-a5eb-19ae500882a6"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<staticText>
<reportElement mode="Opaque" x="320" y="180" width="224" height="15" forecolor="#FFFFFF" backcolor="#878677" uuid="a5300c2f-fcbb-4a5a-8d33-d9497c5236d2"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font isBold="true"/>
</textElement>
<text><![CDATA[Service Address]]></text>
</staticText>
<staticText>
<reportElement x="0" y="240" width="110" height="15" uuid="0f73d450-8813-47d0-a0a5-43f9602d60eb"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Email:]]></text>
</staticText>
<staticText>
<reportElement x="0" y="255" width="110" height="15" uuid="30eb33b7-e913-430f-a73d-077de7301766"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Phone:]]></text>
</staticText>
<staticText>
<reportElement x="0" y="210" width="110" height="15" uuid="7f569af0-955f-4172-8eaf-620007099f16"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Position:]]></text>
</staticText>
<staticText>
<reportElement x="0" y="195" width="110" height="15" uuid="a4f70126-c987-4251-825c-ac25cdce056e"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Contact Person:]]></text>
</staticText>
<staticText>
<reportElement x="0" y="225" width="110" height="15" uuid="6f57eafd-82e5-4cf8-a0fb-827815cc379d"/>
<box topPadding="0" leftPadding="10" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial" isBold="true"/>
</textElement>
<text><![CDATA[Address:]]></text>
</staticText>
<textField>
<reportElement x="110" y="255" width="210" height="15" uuid="d93c5453-9007-4e0a-910a-864028cd5f2d"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="110" y="225" width="210" height="15" uuid="4f491386-74b6-4746-a959-6a02eee38c2f"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="110" y="210" width="210" height="15" uuid="21cb2988-037e-4e93-8abc-ad540e5eb642"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{billingAddress}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="110" y="240" width="210" height="15" uuid="6835aecd-7869-4230-8aca-32f4cb266da1"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{customerId}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="110" y="195" width="210" height="15" uuid="fbf1aeb7-a389-4442-9f5e-fbb66b2dd771"/>
<box topPadding="0" leftPadding="3" bottomPadding="0" rightPadding="0">
<pen lineWidth="0.5"/>
</box>
<textElement textAlignment="Left">
<font fontName="Arial"/>
</textElement>
<textFieldExpression><![CDATA[$F{billingAddress}]]></textFieldExpression>
</textField>
</band>
</detail>
<pageFooter>
<band height="58" splitType="Stretch">
<staticText>
<reportElement x="230" y="14" width="135" height="30" forecolor="#009900" uuid="533f1af2-0b39-4d72-8520-08991ffd63ac"/>
<textElement>
<font size="12" isBold="true"/>
</textElement>
<text><![CDATA[http://www.pulpshred.com]]></text>
</staticText>
</band>
</pageFooter>
</jasperReport>

Java 代码:

public  byte[] exportToPdf(String jasperFile,List<CustomerJ> genericReports, Map <String, Object> parameters) throws IOException{
byte[] jasperPdf =null;
try {
jasperReport = JasperCompileManager.compileReport(jasperFile);
// Map <String, Object> parameters = new HashMap<String, Object>();
parameters.put("ReportTitle", "User Report");
// parameters.put("DataFile", "src/test1.jrxml");
// parameters.put("IdRange", 10);
JRDataSource reportSource = new JRBeanCollectionDataSource( genericReports);
jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, reportSource);
jasperPdf = JasperExportManager.exportReportToPdf(jasperPrint);
// JasperExportManager.exportReportToPdfFile(jasperPrint, "testing.pdf");
}
catch (Exception e) {
e.printStackTrace();
}
return jasperPdf;
}
}

public static CustomerJ getCustomer() {
CustomerJ customerJ =new CustomerJ();
customerJ.setCustomerId("ALW0003/ALW Partners");
AddressJ billingAddr = new AddressJ();
AddressJ serviceAddr = new AddressJ();
billingAddr.setContactPerson("Jacey Erickson");
serviceAddr.setContactPerson("Jacey Erickson");
billingAddr.setPosition("Manager");
serviceAddr.setPosition("Manager");
billingAddr.setAddress1("129 17 Avenue NE, Calgary, AB T2E 1L7");
serviceAddr.setAddress1("129 17 Avenue NE, Calgary, AB T2E 1L7");
billingAddr.setEmail("JErickson@alw.ca");
serviceAddr.setEmail("JErickson@alw.ca");
billingAddr.setPhone("403-230-4660");
serviceAddr.setEmail("403-230-4660");
customerJ.setBillingAddress(billingAddr);
customerJ.setServiceAddress(serviceAddr);
return customerJ;
}

最佳答案

您有两个选择(我不认为您可以在 CustomerJ bean 上创建方法):

定义一个字段并在描述中指示属性的路径。

<field name="BillingAddress1" class="java.lang.String">
<fieldDescription><![CDATA[billingAddress.address1]]></fieldDescription>
</field>

将字段定义为 _THIS,表示基类 CustomerJ

<field name="_THIS" class="com.your.package.CustomerJ"/>

在该类的表达式调用方法中,如 textField 中的示例

<textField>
<reportElement x="0" y="0" width="100" height="20" uuid="5884d3b9-3239-4d2e-af3e-ee5163da3d3b"/>
<textFieldExpression><![CDATA[$F{_THIS}.getBillingAddress().getAddress1()]]></textFieldExpression>
</textField>

关于java - 如何获取我的java bean中嵌套对象的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54434981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com