返回顶部
首页 > 资讯 > 精选 >报表设计器中使用spring框架实现自定义数据集
  • 783
分享到

报表设计器中使用spring框架实现自定义数据集

2023-06-03 20:06:43 783人浏览 泡泡鱼
摘要

本篇文章给大家分享的是有关报表设计器中使用spring框架实现自定义数据集,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。spring是一个开源框架,是为了解决企业应用程序开发复

本篇文章给大家分享的是有关报表设计器中使用spring框架实现自定义数据集,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

spring是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。在 WEB 开发环境中经常会与 struts、hibernate联合起来使用,进行规范的框架结构开发。润乾中的二次开发也可以与 ssh 框架相结合部署到 web 项目中。本文介绍在设计时没有启动 web 服务,在设计器中使用 spring 的方式来实现自定义数据集。

实现思路:编写两个自定义数据集,一个在设计器中使用,一个在 web 项目中使用,在设计器中使用的类需要编写临时加载 spring 框架配置文件的代码,启动 spring 框架。Web 项目中的则不需要编写,可直接与 struts 整合,通过监听器的方式启动 struts 框架时同时启动 spring 框架。

拷贝 spring 框架 jar 包。

使用 spring 的注入方式编写一个简单的自定义数据集,首先需要将 spring 的 ioc 核心容器和对 web 支持的 jar 包拷贝到设计器的 lib 目录下(\reportHome\designer\web\WEB-INF\lib)。

第二步:编写一个简单的自定义数据集。

public class Test {  public DataSet getDataSet(Context ctx, DataSetConfig dsc, boolean retrieve) {  DataSet ds = new DataSet(”ds1″);// 定义数据集名称  ds.addCol(”产品ID”);//定义显示列  ds.addCol(”产品名称”);  List col1 = new ArrayList();// 第一列模拟数据集合  for (int i = 1; i <= 4; i++) {  col1.add(i);  }  List col2 = new ArrayList();// 第二列模拟数据集合  col2.add(”struts1.2″);  col2.add(”hibernate3.1″);  col2.add(”spring2.0″);  col2.add(”runqian4.2.5″);  // 设置数据  for (int i = 0; i < col1.size(); i++) {  Row row = ds.addRow();  row.setData(1, col1.get(i));// 产品ID放到第一列的位置  row.setData(2, col2.get(i));// 产品名称放到第二列的位置  }  return ds;  }  }

进行 spring 注入。

将之前编写的自定义数据集的类,通过 spring 注入的形式来实现,将 spring 的配置文件 applicationContext.xml 放置在 classpath 中(也就是设计器中的 \reportHome\designer\web\WEB-INF\classes 目录下)。使用 ApplicationContext 这个接口下的一个实现类 ClassPathXmlApplicationContext 来加载配置文件,需要注意的是,这里可以加载多个配置文件,所以是以数组形势传进的。在 applicationContext.xml 中添加节点,配置 spring 注入的代码,在类中使用 getBean() 方法,根据 xml 中 bean 节点的 id 属性注入。返回的就是该类中定义的这个成员变量了,从而实现了 spring 注入功能。

Spring 配置文件 applicationContext.xml 代码如下:

<?xml version=”1.0″ encoding=”UTF-8″?>  < beans xmlns=”Http://www.springframework.org/schema/beans”  xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”  xsi:schemaLocation=”http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd”><bean id=”Test” class=” com.runqian.Test”></bean>  < bean id=”SpringTest” class=”com.runqian.SpringTest “>  < property name=”test”>  < ref bean=”Test” />  < /property>  < /bean>  < /beans><?xml version=”1.0″ encoding=”UTF-8″?>

Spring 调用类代码如下:

public class SpringTest implements IDataSetFactory {  private Test test;  public SpringTest () {  }  public void setTest(Test test) {  this.test = test;  }  public DataSet createDataSet(Context ctx, DataSetConfig dsc,  boolean retrieve) {  ApplicationContext cxt = new ClassPathXmlApplicationContext(  new String\[\] { “applicationContext.xml” });//手动加载配置文件  test = (Test) cxt.getBean(”Test”);//加载之前定义好的自定义数据集类  return test.getDataSet(ctx, dsc, retrieve);  }  }

将之前编写的自定义数据集和 spring 调用类编译后,把.class 文件放到设计器中的 \reportHome\designer\web\WEB-INF\classes 目录下 (主意加上包文件)

第四步:启动设计器实现自定义数据集。

打开设计器,选择自定义数据集,填入 spring 调用类的包名和类名

显示出之前类中定义的列名,生成数据集成功

这样就实现了不启动 web 服务,在设计器中使用 spring 框架实现自定义数据集了。

以上就是报表设计器中使用spring框架实现自定义数据集,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: 报表设计器中使用spring框架实现自定义数据集

本文链接: https://lsjlt.com/news/235666.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作