下载 iReport-5.6.0,jdk7,以及众多lib , 这里我提供下资源(我的百度云

安装好iReport-5.6.0和jdk7,  在安装目录的\etc\ireport.conf,修改其中的jdkhome为你的jdk7路径,并打开注解

打开 iReport,菜单栏的工具中的选项,在打开下面界面的classpath, 添加下面打勾的前面两个Jar包,最后一个文件夹是你项目编译出来的class

这里采用的是使用javabean来获取数据源,所以要建个实体类,和一个工厂类,并使用一个main方法去编译他们

  1. package Dto;
  2.  
  3. //实体类
  4. public class Student {
  5. private String username;
  6. private String sex;
  7. private String phone;
  8. private String address;
  9. private Integer age;
  10.  
  11. public String getUsername() {
  12. return username;
  13. }
  14.  
  15. public void setUsername(String username) {
  16. this.username = username;
  17. }
  18.  
  19. public String getSex() {
  20. return sex;
  21. }
  22.  
  23. public void setSex(String sex) {
  24. this.sex = sex;
  25. }
  26.  
  27. public String getPhone() {
  28. return phone;
  29. }
  30.  
  31. public void setPhone(String phone) {
  32. this.phone = phone;
  33. }
  34.  
  35. public String getAddress() {
  36. return address;
  37. }
  38.  
  39. public void setAddress(String address) {
  40. this.address = address;
  41. }
  42.  
  43. public Integer getAge() {
  44. return age;
  45. }
  46.  
  47. public void setAge(Integer age) {
  48. this.age = age;
  49. }
  50. }
  1. package Util;
  2.  
  3. import Dto.Student;
  4.  
  5. import java.util.ArrayList;
  6. import java.util.List;
  7.  
  8. //工厂
  9. public class SampleJRDataSourceFactory {
  10. public static List<Student> createBeanCollection() {
  11. List<Student> students = new ArrayList<>();
  12. for(int i = 0; i < 10; i++) {
  13. Student student = new Student();
  14. student.setUsername("name" + i);
  15. if (i%2 == 0)
  16. student.setSex("男");
  17. else
  18. student.setSex("女");
  19. student.setAge(i + 10);
  20. student.setAddress("ZheJian NingBo " + i + "号");
  21. student.setPhone("1785888888" + i);
  22. students.add(student);
  23. }
  24. return students;
  25. }
  26. }
  1. package Util;
  2.  
  3. import Dto.Student;
  4.  
  5. import java.util.List;
  6.  
  7. //调用编译
  8. public class Test {
  9. public static void main(String[] args) {
  10. List<Student> studentList = SampleJRDataSourceFactory.createBeanCollection();
  11. for (Student student : studentList) {
  12. System.out.println(student.getUsername());
  13. }
  14. }
  15. }

设置数据源,点击下面,创建javabean

选中后,设置好工厂的类的位置,和方法名,我的工厂类在util中

然后添加需要的参数

到这,javabean的前提配置都已好,关于ireport的一些使用可查看http://www.360doc.com/content/14/0611/22/4171006_385834700.shtml

注意事项:

对于pdf报表,有中文的属性要设置以下东西

pdf或者word想做表格,可为detai里的属性设置border, 右键点击padding and borders,设置line-width为1

生成jrxml后,就可已开始打印,代码打印可以看我的github项目

开发环境,idea,jdk7 (注:要设置好依赖路径)

报表 jasper + ireport5.6的更多相关文章

  1. Java开源报表Jasper入门(2) -- 使用JasperSoft Studio创建一个简单报表

    在接下来的教程中,我们将实现一个简单的JasperReports示例,展现其基本的开发.使用流程.文章很长,不过是以图片居多,文字并不多. 实例中使用最新的Jasper Studio5.2进行报表设计 ...

  2. 打印信息,通过.jasper工具将集合输出到PDF文件 然后利用打印机打印文件

    我们上一次成功的利用iReport工具制作了一张报表,并且预览了报表最后的效果,也生成了格式为“jrpxml”.“jrxml”与“jasper”的文件.这次,我们使用jasper提供的java的api ...

  3. 2019-04-10 集成JasperReport

    1. 报表的制作过程为 ① 制作.jrxml报表模板文件,并编译成.jasper ② 代码处理.jasper文件并填充数据进行输出 2. 一开始是打算使用iReport作为模板制作工具的,但是有以下局 ...

  4. ireport5.6+jasperreport6.3开发(五)--以javabean为基准的报表开发(action关联)

    这里的是定方法主要参照sturts2-jasperreport-plugin的完成方法(其实就是抄的) PDF的样子是这样的两页的pdf 然后action的配置是这样的(不要在意格式) @Parent ...

  5. Jasper之table报表

    这段时间用Jasper画报表,讲真的Jasper IDE真的很难用,网上找很久都没找到用table画的配置方法,以下是直接操作源码画table的方法,不用IDE一样可以做出来(不过样式还是得借助IDE ...

  6. 1.报表TIBCO Jaspersoft Studio工具教程入门--生成jrxml和jasper文件 然后拖拽到项目中 跟ireport一样

    转自:https://blog.csdn.net/KingSea168/article/details/42553781 2. 在接下来的教程中,我们将实现一个简单的JasperReports示例,展 ...

  7. ireport5.6+jasperreport6.3开发(四)--以javabean为基准的报表开发(ireport)

    javabean完成以后就是添加ireport的报表了 打开ireport的option然后在classpath中添加路径. 然后在ireport中追加数据源如图,点击图标后会出现数据源列表然后按ne ...

  8. ireport5.6+jasperreport6.3开发(三)--以javabean为基准的报表开发(javabean)

    这里只有ireport的开发没有web侧的程序. ireport的数据源可以说是多种多样,大致可以通过文件 数据库 bean类这三种方式,这里只介绍bean类 (数据库比较简单可参考其他的网站,文件没 ...

  9. Jasper报表 自动序列号

    添加表达式:$V{REPORT_COUNT}.toString()

随机推荐

  1. 回味Python2.7——笔记3

    一.错误和异常 1.异常处理 >>> while True: ... try: ... x = int(raw_input("Please enter a number: ...

  2. strtok函数 分类: c++ 2014-11-02 15:24 214人阅读 评论(0) 收藏

    strtok函数是cstring文件中的函数 strtok函数是cstring文件中的函数 其功能是截断字符串 原型为:char *strtok(char s[],const char *delin) ...

  3. Json 工具介绍 fastjson gson jackson

    1. fastjson fastjson是一个Java语言编写的高性能功能完善的JSON库.它采用一种“假定有序快速匹配”的算法,把JSON Parse的性能提升到极致, 是目前Java语言中最快的J ...

  4. 拓扑排序下的有无环判定 STL方法

    bool canFinish(int numCourses, vector<pair<int, int>>& prerequisites) { vector<se ...

  5. 用于NLP的CNN架构搬运:from keras0.x to keras2.x

    本文亮点: 将用于自然语言处理的CNN架构,从keras0.3.3搬运到了keras2.x,强行练习了Sequential+Model的混合使用,具体来说,是Model里嵌套了Sequential. ...

  6. swift3.0 UITableView侧滑支持多选项

    func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableVie ...

  7. NYOJ--STL--擅长排列的小明(强大的string :: iterator 和next_permutation)

    NYOJ--STL--擅长排列的小明 #include <iostream> #include <string> #include <algorithm> usin ...

  8. 菜鸟的 Sass 学习笔记

    介绍 sass 是什么?? 在sass的官网,它是这么形容给自己的 Sass is the most mature, stable, and powerful professional grade C ...

  9. angular学习(四)-- Controller

    1.4 控制器:Controller ng 中的控制器用来对 scope 进行操作 包括初始化数据和定义事件响应函数等 ng 用来解耦业务逻辑层和视图层的关键 controller 操作 scope, ...

  10. Vue内容分发slot

    前面的话 为了让组件可以组合,需要一种方式来混合父组件的内容与子组件自己的模板.这个过程被称为 内容分发 (或 “transclusion” ).Vue实现了一个内容分发 API,参照了当前 Web ...