欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JasperReport C/S简单应用

程序员文章站 2022-05-15 22:37:28
...

iReport+jasperReport之JDBC数据源

iReport画出来的报表可以满足我们大部分的需要,所以采用iReport 编辑jrxml文件是我们的首选啦!当然掌握jrxml文件的结构也是必须的。
        采用JDBC数据源必须有数据库支持啊!我们新建一个test表,其中有pid、name、sex、password、department、age字段,为了方便期间我们定义这些字段全部为String类型。
        在iReport中新建一报表,报表有title、pageHeader、columnHeader、detail、columnFooter、pageFooter、lastPageFooter、summary等部分,被成为Report section

title:顾名思义是指报表的标题哦,它会显示在报表的最上面,如果有多页只会出现在第一页的最上面。pageHeader:每页的标题,如果有多页每页的开始都会显示此部分内容。
columnHeader:显示报表的列头不经常使用。
detail:这个就不用说了吧!
有header就会出现footer啦!lastPageFooter只会出现在最后一页。summay会出现在每一页数据上,主要是为了展示一些统计信息,比如当前的时间,页数信息啦!

新建一parameter
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
此参数可作为报表的标题使用,我们在程序中动态的传递给报表。
    document structure---》parameter里找到reportTitle参数拖至title区域,右击编辑reportTitle域的属性,在font选项里找到Markup设置为HTML,TextField选项里设置Text Field Expreesion为

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 "<font color='blue' size='5'>"+$P{reportTitle}+"</font>"

下来就是设置报表的Field字段了,不需要我们一个个的新建那些字段啦!
选择Data--->Report Query在Report Query选项里选择Query Language为SQL,写入SqL语句

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 select * from test order by pid DESC

这时所有的field会出现在下面(SQL是正确的)
关闭对话框在document structure---》field中就会出现我们需要的field,之后拖到相应的位置,关于怎么美化报表这个本人也不是很懂哦!
如果需要显示一下当前的页数信息也可以自己托动Variables里的PAGE_NUMBER完成页数的显示。完整的jrxml文件如下:

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 <?xml version="1.0" encoding="UTF-8"  ?>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
<!-- Created with iReport - A designer for JasperReports -->
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
<jasperReport
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          
name="Person"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          columnCount
="1"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          printOrder
="Vertical"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          orientation
="Portrait"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          pageWidth
="595"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          pageHeight
="842"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          columnWidth
="535"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          columnSpacing
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          leftMargin
="30"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          rightMargin
="30"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          topMargin
="20"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          bottomMargin
="20"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          whenNoDataType
="NoPages"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          isTitleNewPage
="false"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出          isSummaryNewPage
="false">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<property name="ireport.scriptlethandling" value="0" />
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<property name="ireport.encoding" value="UTF-8" />
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<import value="java.util.*" />
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<import value="net.sf.jasperreports.engine.*" />
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<import value="net.sf.jasperreports.engine.data.*" />
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<parameter name="reportTitle" isForPrompting="true" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<queryString><![CDATA[select * from test order by pid DESC]]></queryString>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="pid" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="name" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="sex" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="password" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="department" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     
<field name="age" class="java.lang.String"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<background>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="6"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</background>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<title>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="29"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="138"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="258"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="29"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement textAlignment="Center" verticalAlignment="Middle" markup="html">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font pdfFontName="Helvetica-Bold" isBold="true"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA["<font color='blue' size='5'>"+$P{reportTitle}+"</font>"]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</title>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<pageHeader>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="0"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</pageHeader>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<columnHeader>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="0"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</columnHeader>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<detail>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="22"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="100"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{pid}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="100"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="93"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{name}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="193"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="58"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{sex}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="251"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="100"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{password}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="351"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="100"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{department}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" pattern="" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="451"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="84"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement verticalAlignment="Top">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.String"><![CDATA[$F{age}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<line direction="TopDown">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="0"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="17"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="535"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="1"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="line-1"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<graphicElement stretchType="NoStretch"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</line>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</detail>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<columnFooter>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="0"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</columnFooter>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<pageFooter>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="24"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textField isStretchWithOverflow="false" isBlankWhenNull="false" evaluationTime="Now" hyperlinkType="None"  hyperlinkTarget="Self" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="387"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="5"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="22"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="18"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="textField"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement textAlignment="Center" verticalAlignment="Middle">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<textFieldExpression   class="java.lang.Integer"><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</textField>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<staticText>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="373"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="5"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="14"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="17"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="staticText-2"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement textAlignment="Center" verticalAlignment="Middle">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font pdfFontName="Helvetica-Bold" size="12" isBold="true"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<text><![CDATA[]]></text>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</staticText>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<staticText>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<reportElement
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
x="409"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         y
="5"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         width
="14"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         height
="17"
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         key
="staticText-3"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<box></box>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
<textElement textAlignment="Center" verticalAlignment="Middle">
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                         
<font pdfFontName="Helvetica-Bold" size="12" isBold="true"/>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     
</textElement>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
<text><![CDATA[]]></text>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                 
</staticText>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</pageFooter>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
<summary>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
<band height="0"  isSplitAllowed="true" >
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             
</band>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
</summary>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
</jasperReport>
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 

    我们可以直接使用ireport查看预览效果,但是大部分我们是在应用程序中使用的哦!我们看看我们怎么让这个jrxml模板文件工作呢,   

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 File file = new File("Person.jrxml");
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出             InputStream in 
= new FileInputStream(file); // 编译报表 jasperReport =
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
            jasperReport = JasperCompileManager.compileReport(in);

编译文件是很耗时的工作,通常这个由iReport去做我们使用jasper文件即可,

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 jasperReport = (JasperReport) JRLoader
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     .loadObject(
"D:\\workspace\\Person.jasper");

产生了JasperReport对象下来就是要填充数据了,采用JDBC方式我们需要一个打开的connection(数据库连接),
还有报表需要的parameter:

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 public HashMap getMap() {
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         HashMap map 
= new HashMap();
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         map.put(
"reportTitle""laoshulin");
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出         
return map;
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出     }


 

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 jasperPrint = JasperFillManager
JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出                     .fillReport(jasperReport, getMap, getConn());

针对jasperPrint对象JasperReport有很多的API可以提供各种方式的预览或是生成文件
我只说说JasperViewer吧!其它的看看api或是google一下就知道了

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 JasperViewer jasperViewer = new JasperViewer(jasperPrint);


JasperViewer 继承自JFrame类,

JasperReport C/S简单应用
            
    
    博客分类: 开源组件的应用 JasperReportC/S报表打印导出 jasperViewer.setVisible(true);

这样就可以预览报表了,
JRViewer这个类继承Jpanel,我们可以在web中使用它,后面介绍客户端打印时再详细介绍。

    JDBC数据源很简单主要是SQL的功底,但是它是最基础的,网上一大堆这方面的介绍哦,可以参考别人的多看看哦,我写的这些都有点语无伦次了,主要是我自己不怎么写东西,多以代码的形式留给自己了,现在写出来和大家交流,当时做这个的时候找了好多的文章没有一篇写的深刻的,大多都是copy的。


 

import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRMapCollectionDataSource;
import net.sf.jasperreports.view.JasperViewer;
/**
 *
 * <p>C/S架构 JasperReport 的简单使用<p>
 *
 * 创建日期 2013-4-22<br>
 * @author  longgangbai<br>
 * @version $Revision$ 2013-4-22
 * @since   3.0.0
 */
public class Main {
    public static JRDataSource createReportDataSource() {
        JRDataSource dataSource;
        Collection<Map<String, ?>> reportRows = initializeMapArray();
        dataSource = new JRMapCollectionDataSource(reportRows);
        return dataSource;
    }
    public static Collection<Map<String,?>> initializeMapArray() {
        Collection<Map<String, ?>> reportRows = new ArrayList<Map<String,?>>();
        HashMap<String, String> row1Map = new HashMap<String, String>();
        HashMap<String, String> row2Map = new HashMap<String, String>();
        HashMap<String, String> row3Map = new HashMap<String, String>();
        HashMap<String, String> row4Map = new HashMap<String, String>();
        row1Map.put("tail_num", "N263Y");
        row1Map.put("aircraft_serial", "Chinese,我是中国人");
        row1Map.put("aircraft_model", "39 ROSCOE TRNR RACER");
        row1Map.put("engine_model", "R1830 SERIES");
        row2Map.put("tail_num", "N4087X");
        row2Map.put("aircraft_serial", "BA100-163");
        row2Map.put("aircraft_model", "BRADLEY AEROBAT");
        row2Map.put("engine_model", "R2800 SERIES");
        row3Map.put("tail_num", "N43JE");
        row3Map.put("aircraft_serial", "HAYABUSA 1");
        row3Map.put("aircraft_model", "NAKAJIMA KI-43 IIIA");
        row3Map.put("engine_model", "R1830 SERIES");
        row4Map.put("tail_num", "N912S");
        row4Map.put("aircraft_serial", "9973CC");
        row4Map.put("aircraft_model", "PA18-150");
        row4Map.put("engine_model", "R-1820 SER");
        reportRows.add(row1Map);
        reportRows.add(row2Map);
        reportRows.add(row3Map);
        reportRows.add( row4Map);
        return reportRows;
    }
      public static void main(String[] args) throws JRException {
          InputStream  inputStream=Main.class.getResourceAsStream("/resources/data/AircraftReport.jrxml");
          System.out.println(inputStream);
          JRDataSource  jrdatasource =createReportDataSource();
          //填充报表数据生成JasperPrint对象
          JasperReport jrt = JasperCompileManager.compileReport(inputStream);//编译报表格式
          //填充报表数据生成JasperPrint对象
          JasperPrint jasperPrint = JasperFillManager.fillReport(jrt, new HashMap<String, Object>(), jrdatasource);
          JasperViewer.viewReport(jasperPrint,false);
          JasperViewer view = new JasperViewer(jasperPrint, false);
          view.pack();
          view.setVisible(true);
    }
}