报表集成通常分为两个步骤:单点登录、报表集成。
单点登录:通过CAS、AD域等方式,完成单点登录
报表集成:每个电子表格报表都是一个URL,可以通过URL链接将报表嵌入到第三方系统中
Smartbi从报表开发的数据准备、样式设计、数据计算、数据可视化、互动逻辑、共享发布六大步骤上都有特色的功能,充分利用了Excel的现有能力,堪称企业报表平台的解决方案专家。尤其集成了Excel和ECharts后,使得Smartbi具有丰富的展现力、强大的互动性(基于单元格和对象的数据模型)、超级灵活的布局能力,而且这些都可以在Excel界面上全部完成。
集群:提高系统性能和可靠性
高一致性:所有通过Smartbi产品进行的配置和文件都可以随时同步到集群的各个节点。
高可用性:支持所有单机功能。单一节点宕机后,系统仍可正常访问。
强扩展性:基于良好的架构设计,随着节点的增加,系统所支持的并发几乎呈线性增长,且每个节点的负载更加均衡。
使用简单:可在平台中通过简单的 *** 作快速配置集群环境,其中节点的增删支持热部署。此外,还可在平台中监控各个节点的运行情况和日志。Smartbi一站式大数据分析平台
下面的代码(JasperReportExport.java)演示了JasperReport文档的导出过程。该JasperExportManager提供的方法将报表导出成PDF,HTML和XML。导出到使用的类net.sf.jasperreports.engine.export.JRXlsExporter的XLS格式。此代码生成以下三个文件:· sample_report.pdf
· sample_report.htmll
· sample_report.xls
导出为其他格式
让我们来写一个报表模板。在JRXML文件的内容 (C:\tools\jasperreports-5.0.1\test\jasper_report_template.jrxml) 如下:
<queryString>
<![CDATA[]]>
</queryString>
<fieldname="country"class="java.lang.String">
<fieldDescription><![CDATA[country]]></fieldDescription>
</field>
<fieldname="name"class="java.lang.String">
<fieldDescription><![CDATA[name]]></fieldDescription>
</field>
<columnHeader>
<bandheight="23">
<staticText>
<reportElementmode="Opaque"x="0"y="3"width="535"
height="15"backcolor="#70A9A9"/>
<box>
<bottomPenlineWidth="1.0"lineColor="#CCCCCC"/>
</box>
<textElement/>
<text><![CDATA[]]></text>
</staticText>
<staticText>
<reportElementx="414"y="3"width="121"height="15"/>
<textElementtextAlignment="Center"
verticalAlignment="Middle">
<fontisBold="true"/>
</textElement>
<text><![CDATA[Country]]></text>
</staticText>
<staticText>
<reportElementx="0"y="3"width="136"height="15"/>
<textElementtextAlignment="Center"
verticalAlignment="Middle">
<fontisBold="true"/>
</textElement>
<text><![CDATA[Name]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<bandheight="16">
<staticText>
<reportElementmode="Opaque"x="0"y="0"width="535"
height="14"backcolor="#E5ECF9"/>
<box>
<bottomPenlineWidth="0.25"lineColor="#CCCCCC"/>
</box>
<textElement/>
<text><![CDATA[]]></text>
</staticText>
<textField>
<reportElementx="414"y="0"width="121"height="15"/>
<textElementtextAlignment="Center"
verticalAlignment="Middle">
<fontsize="9"/>
</textElement>
<textFieldExpressionclass="java.lang.String">
<![CDATA[$F{country}]]>
</textFieldExpression>
</textField>
<textField>
<reportElementx="0"y="0"width="136"height="15"/>
<textElementtextAlignment="Center"
verticalAlignment="Middle"/>
<textFieldExpressionclass="java.lang.String">
<![CDATA[$F{name}]]>
</textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
问件C:\tools\jasperreports-5.0.1\test\src\com\yiibai\DataBeanList.java 的内容如下:
package com.yiibai
import java.util.ArrayList
publicclassDataBeanList{
publicArrayList<DataBean>getDataBeanList(){
ArrayList<DataBean>dataBeanList =newArrayList<DataBean>()
dataBeanList.add(produce("Manisha","India"))
dataBeanList.add(produce("Dennis Ritchie","USA"))
dataBeanList.add(produce("V.Anand","India"))
dataBeanList.add(produce("Shrinath","California"))
return dataBeanList
}
/**
* This method returns a DataBean object,
* with name and country set in it.
*/
privateDataBean produce(String name,String country){
DataBean dataBean =newDataBean()
dataBean.setName(name)
dataBean.setCountry(country)
return dataBean
}
}
写一个主类文件JasperReportFill.java,它从类(DataBeanList)获取java bean集合,并将其传递到Jasper 报表引擎,填补了报表模板。把它保存到目录C:\tools\jasperreports-5.0.1\test\src\com\yiibai.
package com.yiibai
import java.util.ArrayList
import java.util.HashMap
import java.util.Map
import net.sf.jasperreports.engine.JRException
import net.sf.jasperreports.engine.JRExporterParameter
import net.sf.jasperreports.engine.JasperExportManager
import net.sf.jasperreports.engine.JasperFillManager
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource
import net.sf.jasperreports.engine.export.JRXlsExporter
publicclassJasperReportFill{
@SuppressWarnings("unchecked")
publicstaticvoid main(String[] args){
String sourceFileName ="c://tools/jasperreports-5.0.1/"
+"test/jasper_report_template.jasper"
String printFileName =null
DataBeanListDataBeanList=newDataBeanList()
ArrayList dataList =DataBeanList.getDataBeanList()
JRBeanCollectionDataSource beanColDataSource =
newJRBeanCollectionDataSource(dataList)
Map parameters =newHashMap()
try{
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)