- 浏览: 1237360 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (399)
- 心情故事 (12)
- java (115)
- linux (55)
- 关系型数据库 (35)
- struts,jsf,spring (11)
- jdbc,hibernate,ibatis (11)
- jsp,jstl,c:tag,标签库 (2)
- ejb,webservice (1)
- tomcat,jboss,jetty,weblogic,websphere (15)
- java网络编程 (6)
- java线程 (0)
- js,jquery,json,xml,dom,html.regex (25)
- 设计模式 (6)
- BUG记录 (2)
- ant (2)
- jsp,servlet (4)
- swing (6)
- lucene+nutch (6)
- log4j (2)
- windows doc (2)
- ruby (1)
- ruby on rails (3)
- 操作系统网络 (18)
- apache 错误 (1)
- tomcat (10)
- jboss (9)
- jetty (9)
- weblogic (9)
- websphere (10)
- apache (2)
- AIX的iostat命令查看系统磁盘的使用情况 (1)
- oracle 统计一个表格有多少列 (1)
- Exception in thread "main" java.security.KeyStoreException: Windows-MY not found (1)
- jsp (1)
- jstl (1)
- c:tag (1)
- 标签库 (1)
- struts (1)
- jsf (1)
- spring (2)
- oracle,sqlplus (2)
- sqlplus (2)
- show errors (1)
- proc (1)
- function (1)
- ORA-06544: PL/SQL: internal error (1)
- arguments: [55916] (1)
- [] (7)
- 终端身份实施文档 (1)
- 重装系统之后飞鸽传书只能看到自己 (1)
- vsftp "上传 553 Could not create file" (1)
- startWebLogic.sh启动失败,提示Error initializing Embedded LDAP Server (1)
- java agent 注册为 windows 服务 (1)
- centos (1)
- svn (1)
- apr (1)
- apr-util (1)
- activemq (2)
- oracle (5)
- mysql (3)
- nosql (3)
- NSIS (1)
- windows wmic (1)
- c 指针 (1)
- c c++ (0)
- jmeter (0)
- 性能测试 (0)
- linux,备份 (2)
- C++ ,Virtual (1)
- windows dos (1)
- android (2)
- 大数据,云计算 (1)
- JVM垃圾收集 (1)
- jdbc (2)
- invoke (1)
- hibernate (1)
- ibatis (1)
- 个人开源项目源码收藏 (1)
- 批处理 (1)
- Mongodb mapreduce (8)
- kettle (1)
- Mongodb capped (1)
- mongodb gridfs (1)
- Mongodb 入门基础知识 (1)
- mongodb (8)
- hadoop2.5.1 (1)
- hadoop (4)
- eclipse (1)
- hdfs fs (1)
- elipse hadoop plugin (1)
- PHP相关知识 (1)
- js (1)
- jquery (1)
- json (1)
- xml (1)
- dom (1)
- html.regex (1)
- 网络知识 (1)
- nginx (1)
- docker (1)
- 测试 (1)
- nodejs (1)
- iptables (1)
- linux gitlab (1)
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
web页面调用window.print()函数实现打印的功能 -
hxdtech:
非常感谢!
我在学习ibatis时的培训ppt -
zmwxiaoming:
what 能连数据库不错
SOLR的学习整理 -
springdata_springmvc:
java程序语言学习教程 地址http://www.zuida ...
java获取当前操作系统的信息 -
huanzei:
整理的不错,
oracle lpad函数
jasperreports是一个用来开发报表的组件,通常和ireport来配合使用,可以快速的构建出漂亮的报表。但是ireport画出的报表模板过于死板,就是不支持动态的列。现在要自己实现一个报表模板,先参考ireport工具画出的模板,然后改改,用java代码自己实现一个。
项目组目前就是这么做的,自己去写一个模板,一个横排的,一个竖排的,应为字段比较多,一般采用竖排的。我们项目组做动态报表没有用DynamicJasper这个开源的动态报表的组件,原因是我觉得他用起来也不太方便。还有就是时间的问题。
做了两个模板,现在备份下来。首先是横排的模板
package cn.hzmc.dynamicreport.example7; import java.awt.Color; import java.sql.Connection; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import net.sf.jasperreports.engine.JRAlignment; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRReport; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.base.JRBaseLine; import net.sf.jasperreports.engine.base.JRBasePrintText; import net.sf.jasperreports.engine.design.JRDesignBand; import net.sf.jasperreports.engine.design.JRDesignExpression; import net.sf.jasperreports.engine.design.JRDesignField; import net.sf.jasperreports.engine.design.JRDesignLine; import net.sf.jasperreports.engine.design.JRDesignQuery; import net.sf.jasperreports.engine.design.JRDesignStaticText; import net.sf.jasperreports.engine.design.JRDesignStyle; import net.sf.jasperreports.engine.design.JRDesignTextField; import net.sf.jasperreports.engine.design.JasperDesign; import com.capaa.pipe.config.ReadConfig; class Sample6 { @SuppressWarnings("deprecation") Sample6() throws Exception { Connection connection = getConnection(); JasperDesign jasperDesign = new JasperDesign(); JRDesignStyle normalStyle = setReportSytle(jasperDesign); JRDesignQuery query = new JRDesignQuery(); query.setText("select userid,name,age,sex,password,department from person"); jasperDesign.setQuery(query); //addReportFiled(jasperDesign); // Title JRDesignBand band = new JRDesignBand(); band.setHeight(20); JRDesignStaticText staticText = new JRDesignStaticText(); staticText.setX(200); staticText.setY(0); staticText.setWidth(200); staticText.setHeight(15); staticText.setHorizontalAlignment(JRAlignment.HORIZONTAL_ALIGN_RIGHT); //设置文本的对齐方式 staticText.setStyle(normalStyle); staticText.setText("杭州美创科技有限公司审计报表 "); band.addElement(staticText); JRDesignLine line = new JRDesignLine(); line.setX(0); line.setY(19); line.setWidth(500); line.setHeight(1); line.setForecolor(new Color(0x99,0xFF,0xFF)); band.addElement(line); jasperDesign.setTitle(band); // Page header band = new JRDesignBand(); //band.setHeight(20); band.setHeight(0); jasperDesign.setPageHeader(band); // Column header band = new JRDesignBand(); band.setHeight(20); // 开始添加列字段 String[] headers = {"USERID","NAME","AGE","SEX","PASSWORD","DEPARTMENT"}; String[] alias = {"USERID","NAME","AGE","SEX","PASSWORD","DEPARTMENT"}; int X = 80; int columnHeaderfontSize = 10; int fontSize = 8; int textHeight = 20; int textWidth = 80; int detailHeight = 20; JRDesignBand detail = new JRDesignBand(); detail.setHeight(detailHeight); for(int i = 0;i<headers.length;i++){ JRDesignStaticText jrstaticText = new JRDesignStaticText(); jrstaticText.setText(headers[i]); jrstaticText.setFontSize(columnHeaderfontSize); jrstaticText.setHeight(textHeight); jrstaticText.setWidth(textWidth); if(i==0){ X=0; }else{ X = 80; } jrstaticText.setX(X * i); jrstaticText.setPdfFontName("STSong-Light"); jrstaticText.setPdfEmbedded(true); jrstaticText.setPdfEncoding("UniGB-UCS2-H"); // jrstaticText.setTextAlignment(JRBasePrintText.HORIZONTAL_ALIGN_CENTER); // jrstaticText.setLeftBorder(JRBaseLine.PEN_1_POINT); // jrstaticText.setTopBorder(JRBaseLine.PEN_1_POINT); // jrstaticText.setRightBorder(JRBaseLine.PEN_1_POINT); // jrstaticText.setBottomBorder(JRBaseLine.PEN_1_POINT); jrstaticText.setForecolor(Color.blue); // jrstaticText.setStretchType((byte)0); band.addElement(jrstaticText); // 定义字段,注册字段 JRDesignField field = new JRDesignField(); field.setName(alias[i]); field.setValueClass(String.class); jasperDesign.addField(field); // add text fields for displaying fields JRDesignTextField textField = new JRDesignTextField(); JRDesignExpression expression = new JRDesignExpression(); expression.setText("$F{" + alias[i] + "}"); expression.setValueClass(String.class); textField.setExpression(expression); textField.setFontSize(fontSize); textField.setHeight(textHeight); textField.setWidth(textWidth); textField.setX(X * i); textField.setPdfFontName("STSong-Light"); textField.setPdfEmbedded(true); textField.setPdfEncoding("UniGB-UCS2-H"); textField.setTextAlignment(JRBasePrintText.HORIZONTAL_ALIGN_CENTER); textField.setLeftBorder(JRBaseLine.PEN_1_POINT); textField.setTopBorder(JRBaseLine.PEN_1_POINT); textField.setRightBorder(JRBaseLine.PEN_1_POINT); textField.setBottomBorder(JRBaseLine.PEN_1_POINT); //textField.setForecolor(new Color(0x99,0xFF,0xFF)); textField.setForecolor(Color.blue); textField.setStretchWithOverflow(true); detail.addElement(textField); } jasperDesign.setColumnHeader(band); //detail jasperDesign.setDetail(detail); // Column footer band = new JRDesignBand(); band.setHeight(10); jasperDesign.setColumnFooter(band); // Page footer band = new JRDesignBand(); band.setHeight(80); staticText = new JRDesignStaticText(); staticText.setX(0); staticText.setY(0); staticText.setWidth(100); staticText.setHeight(20); staticText.setPdfFontName("STSong-Light"); staticText.setPdfEmbedded(true); staticText.setPdfEncoding("UniGB-UCS2-H"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); staticText.setText(sdf.format(new Date())); band.addElement(staticText); JRDesignTextField textField = new JRDesignTextField(); textField.setX(450); textField.setY(0); textField.setWidth(100); textField.setHeight(20); textField.setPdfFontName("STSong-Light"); textField.setPdfEmbedded(true); textField.setPdfEncoding("UniGB-UCS2-H"); JRDesignExpression expression = new JRDesignExpression(); expression = new JRDesignExpression(); expression.setValueClass(java.lang.Integer.class); expression.setText("$V{PAGE_NUMBER}"); textField.setExpression(expression); band.addElement(textField); jasperDesign.setPageFooter(band); System.out.println(expression.getText()); // Summary band = new JRDesignBand(); band.setHeight(0); /* **************************************************************** */ /* Here My doubt */ /* * JRDesignChart chart1 = new * JRDesignChart(null,JRChart.CHART_TYPE_LINE); chart1.setHeight(100); * chart1.setBorderColor(Color.red); chart1.setForecolor(Color.BLACK); * chart1.setWidth(200); */ // band.addElement(chart1); jasperDesign.setSummary(band); System.out.println("After Connection"); JasperReport jasperReport = JasperCompileManager .compileReport(jasperDesign); Map parameters = new HashMap(); System.out.println("After Parameter"); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, connection); System.out.println("After Print"); JasperExportManager.exportReportToHtmlFile(jasperPrint, "D://test2.html"); JasperExportManager.exportReportToPdfFile(jasperPrint, "D://test2.pdf"); JasperExportManager.exportReportToXmlFile(jasperPrint, "D://test2.xml", false); System.out.println("After Export"); } private void addReportFiled(JasperDesign jasperDesign) throws JRException { JRDesignField field; field=new JRDesignField(); field.setName("USERID"); field.setValueClass(java.math.BigDecimal.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("NAME"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("AGE"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("SEX"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("PASSWORD"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("DEPARTMENT"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); } private JRDesignStyle setReportSytle(JasperDesign jasperDesign) throws JRException { jasperDesign.setName("SampleReport"); jasperDesign.setPageWidth(595); jasperDesign.setPageHeight(842); jasperDesign.setColumnWidth(535); jasperDesign.setColumnSpacing(0); jasperDesign.setLeftMargin(30); jasperDesign.setRightMargin(30); jasperDesign.setTopMargin(20); jasperDesign.setBottomMargin(20); // whenNoDataType="NoPages" jasperDesign.setWhenNoDataType(JRReport.WHEN_NO_DATA_TYPE_BLANK_PAGE); // isTitleNewPage="false" jasperDesign.setTitleNewPage(false); // isSummaryNewPage="false" jasperDesign.setSummaryNewPage(false); // jasperDesign.setOrientation(JRReport.ORIENTATION_PORTRAIT); // jasperDesign.setPrintOrder(JRReport.PRINT_ORDER_VERTICAL); JRDesignStyle normalStyle = new JRDesignStyle(); normalStyle.setName("Arial_Normal"); normalStyle.setDefault(true); normalStyle.setFontName("Arial"); normalStyle.setFontSize(12); normalStyle.setPdfFontName("STSong-Light"); normalStyle.setPdfEncoding("UniGB-UCS2-H"); normalStyle.setPdfEmbedded(true); jasperDesign.addStyle(normalStyle); JRDesignStyle boldStyle = new JRDesignStyle(); boldStyle.setName("Arial_Bold"); boldStyle.setFontName("Arial"); boldStyle.setFontSize(12); boldStyle.setBold(true); boldStyle.setPdfFontName("STSong-Light"); boldStyle.setPdfEncoding("UniGB-UCS2-H"); boldStyle.setPdfEmbedded(true); jasperDesign.addStyle(boldStyle); JRDesignStyle italicStyle = new JRDesignStyle(); italicStyle.setName("Arial_Italic"); italicStyle.setFontName("Arial"); italicStyle.setFontSize(12); italicStyle.setItalic(true); italicStyle.setPdfFontName("STSong-Light"); italicStyle.setPdfEncoding("UniGB-UCS2-H"); italicStyle.setPdfEmbedded(true); jasperDesign.addStyle(italicStyle); return normalStyle; } private Connection getConnection() throws SQLException { Connection connection = ReadConfig.getProduceInstance().getDataSource() .getConnection(); return connection; } } class Sample { public static void main(String args[]) throws Exception { Sample6 obj = new Sample6(); } }
然后是竖排的模板
package cn.hzmc.dynamicreport.example8; import java.awt.Color; import java.sql.Connection; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import net.sf.jasperreports.engine.JRAlignment; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRReport; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.base.JRBaseLineBox; import net.sf.jasperreports.engine.base.JRBasePrintText; import net.sf.jasperreports.engine.design.JRDesignBand; import net.sf.jasperreports.engine.design.JRDesignExpression; import net.sf.jasperreports.engine.design.JRDesignField; import net.sf.jasperreports.engine.design.JRDesignLine; import net.sf.jasperreports.engine.design.JRDesignQuery; import net.sf.jasperreports.engine.design.JRDesignStaticText; import net.sf.jasperreports.engine.design.JRDesignStyle; import net.sf.jasperreports.engine.design.JRDesignTextField; import net.sf.jasperreports.engine.design.JasperDesign; import com.capaa.pipe.config.ReadConfig; class Sample { @SuppressWarnings("deprecation") Sample() throws Exception { Connection connection = getConnection(); JasperDesign jasperDesign = new JasperDesign(); JRDesignStyle normalStyle = setReportSytle(jasperDesign); JRDesignQuery query = new JRDesignQuery(); query.setText("select userid,name,age,sex,password,department from person"); jasperDesign.setQuery(query); //addReportFiled(jasperDesign); // Title JRDesignBand band = new JRDesignBand(); band.setHeight(20); JRDesignStaticText staticText = new JRDesignStaticText(); staticText.setX(200); staticText.setY(0); staticText.setWidth(200); staticText.setHeight(15); staticText.setHorizontalAlignment(JRAlignment.HORIZONTAL_ALIGN_RIGHT); //设置文本的对齐方式 staticText.setStyle(normalStyle); staticText.setText("杭州美创科技有限公司审计报表 "); band.addElement(staticText); JRDesignLine line = new JRDesignLine(); line.setX(0); line.setY(19); line.setWidth(500); line.setHeight(1); line.setForecolor(new Color(0x99,0xFF,0xFF)); band.addElement(line); jasperDesign.setTitle(band); // Page header band = new JRDesignBand(); //band.setHeight(20); band.setHeight(0); jasperDesign.setPageHeader(band); // Column header band = new JRDesignBand(); band.setHeight(0); jasperDesign.setColumnHeader(band); //detail // 开始添加列字段 String[] headers = {"USERID","NAME","AGE","SEX","PASSWORD","DEPARTMENT"}; String[] alias = {"USERID","NAME","AGE","SEX","PASSWORD","DEPARTMENT"}; int Y = 20; int columnHeaderfontSize = 10; int fontSize = 8; int textHeight = 19; int textWidth = 180; int detailHeight = 130; JRDesignBand detail = new JRDesignBand(); detail.setHeight(detailHeight); for(int i=0;i<headers.length;i++){ } for(int i = 0;i<headers.length;i++){ JRDesignStaticText jrstaticText = new JRDesignStaticText(); jrstaticText.setText(headers[i]); jrstaticText.setFontSize(columnHeaderfontSize); jrstaticText.setHeight(textHeight); jrstaticText.setWidth(textWidth); jrstaticText.setY(Y * i); jrstaticText.setPdfFontName("STSong-Light"); jrstaticText.setPdfEmbedded(true); jrstaticText.setPdfEncoding("UniGB-UCS2-H"); // jrstaticText.setTextAlignment(JRBasePrintText.HORIZONTAL_ALIGN_CENTER); jrstaticText.setTextAlignment(JRBasePrintText.HORIZONTAL_ALIGN_LEFT); /*jrstaticText.setLeftBorder(JRBaseLine.PEN_1_POINT); jrstaticText.setTopBorder(JRBaseLine.PEN_1_POINT); jrstaticText.setRightBorder(JRBaseLine.PEN_1_POINT); jrstaticText.setBottomBorder(JRBaseLine.PEN_1_POINT); */ jrstaticText.setForecolor(Color.black); // jrstaticText.setStretchType((byte)0); // band.addElement(jrstaticText); detail.addElement(jrstaticText); // 定义字段,注册字段 JRDesignField field = new JRDesignField(); field.setName(alias[i]); field.setValueClass(String.class); jasperDesign.addField(field); // add text fields for displaying fields JRDesignTextField textField = new JRDesignTextField(); JRDesignExpression expression = new JRDesignExpression(); expression.setText("$F{" + alias[i] + "}"); expression.setValueClass(String.class); textField.setExpression(expression); textField.setFontSize(fontSize); textField.setHeight(textHeight); textField.setWidth(textWidth); textField.setX(textWidth); textField.setY(Y*i); textField.setPdfFontName("STSong-Light"); textField.setPdfEmbedded(true); textField.setPdfEncoding("UniGB-UCS2-H"); //textField.setTextAlignment(JRBasePrintText.HORIZONTAL_ALIGN_CENTER); textField.setHorizontalAlignment(JRAlignment.HORIZONTAL_ALIGN_LEFT); /*textField.setLeftBorder(JRBaseLine.PEN_1_POINT); textField.setTopBorder(JRBaseLine.PEN_1_POINT); textField.setRightBorder(JRBaseLine.PEN_1_POINT); textField.setBottomBorder(JRBaseLine.PEN_1_POINT);*/ /*JRBaseLineBox baseLineBox = new JRBaseLineBox(textField); baseLineBox.getLeftPen().setLineColor(Color.black); baseLineBox.getLeftPen().setLineWidth(0); baseLineBox.getLeftPen().setLineStyle((byte)0); baseLineBox.getRightPen().setLineColor(Color.black); baseLineBox.getRightPen().setLineWidth(0); baseLineBox.getRightPen().setLineStyle((byte)0); baseLineBox.getTopPen().setLineColor(Color.black); baseLineBox.getTopPen().setLineWidth(0); baseLineBox.getTopPen().setLineStyle((byte)0); baseLineBox.getBottomPen().setLineColor(Color.black); baseLineBox.getBottomPen().setLineWidth(0); baseLineBox.getBottomPen().setLineStyle((byte)0);*/ //textField.setForecolor(new Color(0x99,0xFF,0xFF)); textField.setForecolor(Color.black); textField.setStretchWithOverflow(true); detail.addElement(textField); } // jasperDesign.setColumnHeader(band); //detail jasperDesign.setDetail(detail); // Column footer band = new JRDesignBand(); band.setHeight(0); jasperDesign.setColumnFooter(band); // Page footer band = new JRDesignBand(); band.setHeight(20); JRDesignLine line2 = new JRDesignLine(); line2.setX(0); line2.setY(-10); line2.setWidth(450); line2.setHeight(0); line2.setForecolor(new Color(0x99,0xFF,0xFF)); band.addElement(line2); staticText = new JRDesignStaticText(); staticText.setX(0); staticText.setY(0); staticText.setWidth(100); staticText.setHeight(20); staticText.setPdfFontName("STSong-Light"); staticText.setPdfEmbedded(true); staticText.setPdfEncoding("UniGB-UCS2-H"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); staticText.setText(sdf.format(new Date())); band.addElement(staticText); JRDesignTextField textField = new JRDesignTextField(); textField.setX(450); textField.setY(0); textField.setWidth(100); textField.setHeight(20); textField.setPdfFontName("STSong-Light"); textField.setPdfEmbedded(true); textField.setPdfEncoding("UniGB-UCS2-H"); JRDesignExpression expression = new JRDesignExpression(); expression = new JRDesignExpression(); expression.setValueClass(java.lang.Integer.class); expression.setText("$V{PAGE_NUMBER}"); textField.setExpression(expression); band.addElement(textField); jasperDesign.setPageFooter(band); System.out.println(expression.getText()); // Summary band = new JRDesignBand(); band.setHeight(0); jasperDesign.setSummary(band); System.out.println("After Connection"); JasperReport jasperReport = JasperCompileManager .compileReport(jasperDesign); Map parameters = new HashMap(); System.out.println("After Parameter"); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, connection); System.out.println("After Print"); JasperExportManager.exportReportToHtmlFile(jasperPrint, "D://test3.html"); JasperExportManager.exportReportToPdfFile(jasperPrint, "D://test3.pdf"); JasperExportManager.exportReportToXmlFile(jasperPrint, "D://test3.xml", false); System.out.println("After Export"); } private void addReportFiled(JasperDesign jasperDesign) throws JRException { JRDesignField field; field=new JRDesignField(); field.setName("USERID"); field.setValueClass(java.math.BigDecimal.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("NAME"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("AGE"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("SEX"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("PASSWORD"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); field = new JRDesignField(); field.setName("DEPARTMENT"); field.setValueClass(java.lang.String.class); jasperDesign.addField(field); } private JRDesignStyle setReportSytle(JasperDesign jasperDesign) throws JRException { jasperDesign.setName("SampleReport"); jasperDesign.setPageWidth(595); jasperDesign.setPageHeight(842); jasperDesign.setColumnWidth(335); jasperDesign.setColumnSpacing(0); jasperDesign.setLeftMargin(30); jasperDesign.setRightMargin(30); jasperDesign.setTopMargin(20); jasperDesign.setBottomMargin(20); // whenNoDataType="NoPages" jasperDesign.setWhenNoDataType(JRReport.WHEN_NO_DATA_TYPE_BLANK_PAGE); // isTitleNewPage="false" jasperDesign.setTitleNewPage(false); // isSummaryNewPage="false" jasperDesign.setSummaryNewPage(false); // jasperDesign.setOrientation(JRReport.ORIENTATION_PORTRAIT); // jasperDesign.setPrintOrder(JRReport.PRINT_ORDER_VERTICAL); JRDesignStyle normalStyle = new JRDesignStyle(); normalStyle.setName("Arial_Normal"); normalStyle.setDefault(true); normalStyle.setFontName("Arial"); normalStyle.setFontSize(12); normalStyle.setPdfFontName("STSong-Light"); normalStyle.setPdfEncoding("UniGB-UCS2-H"); normalStyle.setPdfEmbedded(true); jasperDesign.addStyle(normalStyle); JRDesignStyle boldStyle = new JRDesignStyle(); boldStyle.setName("Arial_Bold"); boldStyle.setFontName("Arial"); boldStyle.setFontSize(12); boldStyle.setBold(true); boldStyle.setPdfFontName("STSong-Light"); boldStyle.setPdfEncoding("UniGB-UCS2-H"); boldStyle.setPdfEmbedded(true); jasperDesign.addStyle(boldStyle); JRDesignStyle italicStyle = new JRDesignStyle(); italicStyle.setName("Arial_Italic"); italicStyle.setFontName("Arial"); italicStyle.setFontSize(12); italicStyle.setItalic(true); italicStyle.setPdfFontName("STSong-Light"); italicStyle.setPdfEncoding("UniGB-UCS2-H"); italicStyle.setPdfEmbedded(true); jasperDesign.addStyle(italicStyle); return normalStyle; } private Connection getConnection() throws SQLException { Connection connection = ReadConfig.getProduceInstance().getDataSource().getConnection(); return connection; } } class Vertical { public static void main(String args[]) throws Exception { Sample obj = new Sample(); } }
评论
6 楼
yuanle
2013-10-14
楼主 快点给看看啊!!!!什么原因!!!!!
5 楼
yuanle
2013-10-14
我添加了一个title 为什么不显示???
JRDesignStaticText titleStaticText = new JRDesignStaticText();
titleStaticText.setText(rptForm.getTablename());
titleStaticText.setHeight(20);
//titleStaticText.setStyle(normalStyle);
band.setHeight(50);
band.addElement(titleStaticText);
JRDesignLine line = new JRDesignLine();
line = new JRDesignLine();
line.setX(0);
line.setY(19);
line.setWidth(600);
line.setHeight(1);
line.setForecolor(new Color(0x99,0xFF,0xFF));
band.addElement(line);
jasperDesign.setTitle(band);
JRDesignStaticText titleStaticText = new JRDesignStaticText();
titleStaticText.setText(rptForm.getTablename());
titleStaticText.setHeight(20);
//titleStaticText.setStyle(normalStyle);
band.setHeight(50);
band.addElement(titleStaticText);
JRDesignLine line = new JRDesignLine();
line = new JRDesignLine();
line.setX(0);
line.setY(19);
line.setWidth(600);
line.setHeight(1);
line.setForecolor(new Color(0x99,0xFF,0xFF));
band.addElement(line);
jasperDesign.setTitle(band);
4 楼
JsonTeye
2012-05-08
楼主我也刚学jasperreports,想做个报表,由于我们需求的报表很复杂,都不知道怎么下手,很像那种交叉表,像销售日报,销售月报的之类的报表,你能不能教教我!给点思路!加我QQ1051834224,先谢谢了!
3 楼
414129902
2011-12-29
动态宽度怎么做呢
2 楼
414129902
2011-12-29
请问楼主,怎么分页呢
1 楼
gaoshaoye
2010-12-31
very good。
代码正常运行,运行环境为 jasperReport3.7.6,鉴定完毕。
代码正常运行,运行环境为 jasperReport3.7.6,鉴定完毕。
发表评论
-
centos6.5 hadoop伪分布式搭建
2017-01-10 10:41 25打算整理下machine learn ,再次安装 ... -
springboot
2016-12-29 11:13 2330微服务,现在是一个越来越热的东西,软件架构发展到 ... -
elk安装记录
2016-12-27 18:04 958在centos6.5上安装elk,记录下安装过程和 ... -
dubbo服务框架
2016-12-23 15:40 455上一篇文章介绍了zookeeper,作为服务 ... -
zookeeper服务注册中心配置
2016-12-22 11:40 1633用zookeeper有一段时间了,把配置做下简 ... -
OS X 安装java开发环境
2016-12-03 23:29 562... -
关于Restful API 的设计
2015-06-12 13:32 2239Restful API的流行,很大程度上被当前的移动 ... -
Jvisualvm远程连接tomcat配置:
2015-05-12 16:16 753JvisualVm 监控远程Tomcat,需要在To ... -
jdbc mybatis hibernate springJDBC的一些理解
2015-01-15 17:10 7032... -
Java 的ExecutorService
2015-01-15 11:45 1178早期在Java5以前,我们做多线程程序,一般都 ... -
spring的IOC和AOP
2015-01-14 16:47 2327关于Spring,大家都是耳熟 ... -
java 的线程安全
2014-12-30 14:43 874现代CPU基本都是多核,支持 ... -
JVM ClassLoader
2014-12-25 16:33 894JVM在加载类的时候,都是通过ClassLoad ... -
minor Gc ,Full Gc
2014-12-24 17:22 2067在发生Minor gc之前,虚拟机会先检查老年带最 ... -
Java的主要垃圾回收器
2014-12-24 16:33 1273对象 ... -
JVM的内存结构的一点理解
2014-12-24 11:30 751... -
利用生产者消费者模式实现串行的任务并行化
2014-12-22 17:48 1211试想,一个省有100个处理节点需要 ... -
利用生产者消费者模式实现串行的任务并行化
2014-12-22 17:48 0试想,一个省有100个处理节点需要 ... -
关于Linux的Ulimit参数
2014-12-22 12:13 1236JVM 64位平台与32位平台 ... -
一种表格数据比对的方法
2014-12-19 16:59 1023假设有连个库,一个是生产库,一个是备份库,在一个特 ...
相关推荐
NULL 博文链接:https://qdjinxin.iteye.com/blog/350194
JasperReports开源报表概述和运行原理
iReport+jasperReports JAVA报表是款不错的java报表
JasperReports报表的介绍及其原理,里面还有小例子。
jasperreports 生成报表 pdf excel xml 详细流程
具体模版*.jrxml 博文链接:https://xiaobo.iteye.com/blog/34774
该资源讲解了如果用struts2 jasperReports在myeclipse中制作报表
该小项目以编码形式实现了JaperReports的动态报表功能,以满足用户对报表的高度定制化。 使用该项目时的注意事项: 1.使用Eclipse导入该项目 2.下载JasperReports Library,将JasperReports的jar文件及其依赖jar...
基于struts2-jasperreports-plugin-2.3.1.2改写的插件,在原有功能的基础上又添加了多报表同时打印的功能。建议没用过struts2-jasperreports插件的先学习怎么使用这个插件。配的文档只对添加的功能的使用方法做了...
iReport-JasperReports报表开发指南+操作手册 含书签
JasperReports 报表
JasperReports,iReport制作报表,功能JAR 导入直接运行
JasperReports 报表类库v3.5
iReport+jasperReports 制作WEB报表pdf格式,初学JAVA报表很有用
Jasperreport是一个报表制作程序,用户需要按照它制定的规则编写一个XML文件, 然后得到用户需要输出的格式文件。它支持输出的文件格式包括PDF,HTML,XML,XLS,CVS等等。 而iReport就是一个制作Jasperreport的XML文件...
Struts2整合jasperReports报表,并将其通过pdf、excel、xml等格式显示并打印出来。
JasperReports 报表类库v3.5.7z
jasperreport studio报表设计器