当前位置: 移动技术网 > IT编程>开发语言>.net > 【Ireport+Jasper】初步学习(一)

【Ireport+Jasper】初步学习(一)

2020年07月07日  | 移动技术网IT编程  | 我要评论

Ireport Designer

在Ireport Designer 官网上下载:

[地址:] (https://community.jaspersoft.com/project/ireport-designer/releases)

运行闪退

如果运行出现闪退情况,查看jdk版本是否为jdk1.8以上,英文ireport designer 不支持jdk1.8,所以我们需要把jdk1.8修改为1.7

  1. 找到安装目录先的/etc/ireport.conf文件
    ​​​ireport.conf
  2. 在文件中新增: jdkhome=“C:\Program Files\Java\jdk1.7.0_80”
  3. 重启软件即可

Ireport Designer 的基本操作

如何绑定数据库

  1. 点击红框内的按钮
    ​​​​

  2. 选择Database JDBC connection

  3. 如果:JDBC Driver 选择中的有红色没有找到,请导入相关驱动的jar包
    ![]90
    点击[工具]–>[选项]–>[Classpath] --> [Add JAR]
    在这里插入图片描述

  4. 按自己的数据库填写Name/JDBC URL/username/password等信息后,点击SAVE
    在这里插入图片描述

数据库查询

  1. 点击红框内的按钮,输入你需要制作做的表单数据的sql语句:

在这里插入图片描述

  1. 可以在左菜单栏下边上的Fields下查看查询语句中的相关字段,可以使用鼠标将相关字段拖到画板上进行表单制作
    在这里插入图片描述
  2. 想在查询语句中加入参数,可以使用Parameter字段设置
  • 新增parameter字段参数
    在这里插入图片描述
  • sql语句中引入该参数,语法:$P{per_id}
    在这里插入图片描述
  • 点击"preview",运行浏览报表,这是会弹出提示框需要你填写"per_id"的value
    在这里插入图片描述
  1. 如果想在table或者其他图表中使用自定义的参数,需要以下步骤
  • [组件面板] 选择Table拉到编辑器中

  • 点击New Databases 按钮,填写 Dataset Name,后点击"下一步"
    在这里插入图片描述

  • 选择数据源(数据库),并填写sql语句
    在这里插入图片描述

  • 选择需要用到的fields
    在这里插入图片描述

  • group by (应该和sql语句中的group by 作用相同,尚未使用到所以不填),点击完成
    在这里插入图片描述

  • 点击完成后,跳转回这个界面
    在这里插入图片描述
    +选择Table样式,可以选择要不要table Header/Footer 之类的,点击完成
    在这里插入图片描述

  • 注意:
    必须要parameter和新建数据库(New Dataset 1)中的"parameter" 中新建相同的自定义参数
    在这里插入图片描述

  • 选中table右击"Edit table datasource "设置
    在这里插入图片描述

  • 上面下拉框是选择Dataset 中的 parameter 的 自定义参数,下面的value expression 是填写 Parameter 的值
    在这里插入图片描述
    在这里插入图片描述

  • 在自己设置的数据库中右击选择 edit query
    在这里插入图片描述

  • 在sql中到导入自定义参数
    在这里插入图片描述

  • 点击 preview 按钮查看是否成功
    在这里插入图片描述

  • 输入per_id之后查看表格是否生成
    在这里插入图片描述
    在这里插入图片描述

  • 导出Jasper文件
    点击红框的位置导出Jasper文件,用于java程序的调用
    在这里插入图片描述
    显示这个即为成功在这里插入图片描述

注意事项

  1. 如果table生成不成功,点击table查看表格里面是否有参数,请在New Dataset 1(自己建的数据库)中的parameter中拉到表格中
    在这里插入图片描述
    在这里插入图片描述

Jasper 在java中的运用

导入必要的jar包

使用maven 导入 必要的 jasperreports jar 包,因为我导入的该jar包时

<dependency>
			<groupId>net.sf.jasperreports</groupId>
			<artifactId>jasperreports</artifactId>
			<version>6.7.0</version>
			<exclusions>
				<exclusion>
					<groupId>com.lowagie</groupId>
					<artifactId>itext</artifactId>
				</exclusion>
			</exclusions>
</dependency>

<dependency>
			<groupId>com.lowagie</groupId>
			<artifactId>itext</artifactId>
			<version>2.1.7</version>
</dependency>

加载DB驱动

//加载databases的驱动和连接数据库
	Class.forName("com.micrsoft.sqlserver.jdbc.SQLServerDriver");
	String url = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test";
	String user = "sa";
	String password = "00000";
	Connection conn = DriverManager.getConnection(url, user, password);

连接jasper的模板并导出文件

	//设置报表需要传入的参数
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("per_id",  "ffff");
	//找到Ireport导出的jasper,并传入外部参数,DB连接和得到JasperPrint对象
	JasperPrint jasperPrint = JasperFillManager.fillReport("D:\report1.jasper", map, conn);
//导出PDF文件
JasperExportManager.exportReportTopdfFile("jasperPrint ", "D:/test.pdf");
	
	system.out.println("Export success!");

执行程序查看导出图片

在这里插入图片描述

本文地址:https://blog.csdn.net/m0_37132933/article/details/85763436

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网