zoukankan      html  css  js  c++  java
  • jspersonft有关Table数据绑定(一)

    一:前言

      在公司来就学着做报表,觉得这个报表学着还是很有意义的。jspersonft我在网上搜了一些有关的资料但是不是很多,现在就是学一点就记载一点。好记性不如烂笔头嘛!

    二:在jspersonft定义style样式,边框变“黑”、加粗:

    几个属性调试如下:pdf Encoding:UniGB-UCS2-H(chinese-Simplified);

             pdf font name:STSong-Light;

             font-name:宋体;

             size:12;

              padding and borders(边框):lind 1(这里需要选择四个方位的边框在进行调试)

    三:有关在jspersonft中table数据循环的问题

    (1)现在下面步骤来一步步说明表格式的建立

    1.1如下图所示,先在右边的组件表中拉一个Table放到Detail1中,结果如下图

    1.2:在工具正中间的最下方有“Main Report”和Table1的字样,点击“Table1”进入界面如下:

     1.3:可以看到有“表头”,“列头”,“详细(Detail1)”,"列的footer","表格的footer",现在先加列的头,方法是入下图一样,在“column Header”中选择Column 3然后右键“Add cell”,即是添加一列表头

    1.4:如果想在最后加一个单元格,就在“Detail1”中右键选择“Add Column to the end”,然后删除“Table Header”、“column Footer”,"Table Footer"中的“column 6”,如下图

     

    删除上述图形中选中的几个column即可。

    接着就是开始放表头字段等如下:

    下一步:

    1.5:下面就可以谈下怎么设置Table的数据源问题,有两种方法,一是在工具中设置,二是在代码中设置

    (一)先是第一种方式在工具中设置数据源:

     

    下面就是在代码中查询出数据放入到tables的字段传过来,代码如下:

        ServletContext context = getSession().getServletContext();
            String filePath=context.getRealPath("/report/testTable.jasper");
            String[] id=getRequest().getParameterValues("id");
            List<Map<String,Object>> list=remandService.getData(id);
            
            //下面是补空就是如果表格数据没有10行的行补空操作
            if(list==null){
                list=new ArrayList<Map<String,Object>>();
            }
            int count=10;
            if(list.size()<=count){
                for(int i=list.size();i<10;i++){
                    list.add(null);
                }
            }else if(list.size()>count){
                int count1=(list.size()) % 10;
                for(int i=count1;i<10;i++){
                    list.add(null);
                }
            }        
            List<Map<String, Object>> data = new ArrayList<Map<String, Object>>();
            Map<String, Object> map =new HashMap<String, Object>();
            map.put("tables", list);
            data.add(map);

    今天就先说这么多有关jaspersoft中的Table进行数据绑定的操作的。有时间就继续写,我要先把我自己的论文写了,麻烦啊。真心不想写啊,我都出来工作了,还是得交作业,我滴个乖乖啊。每次写博客园对于自来说都是一次温习,都加深了自己对于这方面知识的印象,努力!!!(最后我啰嗦一句,我这个还是没有看到有关像api的文档,想在我也还是只停留在会用的阶段,什么时候要拆分开来,自己做一做,今天去官网下载,也不知道是不是,如果有的大神们可以给我一份像api的那样的文档吧。)

  • 相关阅读:
    IDEA提交项目到SVN
    动态代理
    eclipse安装svn,初次提交项目到svn
    异常信息:java.lang.IllegalStateException: Cannot forward after response has been committed
    网上商城订单
    学生选课系统
    分页
    用户注册登录 和 数据写入文件的注册登录
    第一次考试(基础部分)
    小数和质数问题
  • 原文地址:https://www.cnblogs.com/wuhao1991/p/3986857.html
Copyright © 2011-2022 走看看