ureport报表与SSM项目集成

SSM项目整合ureport报表框架

    • 前言
    • 具体实施步骤

前言

  最近项目由于要使用比较复杂的报表,目前市场上开源免费的可能ureport是最好的选择了。之前自己使用springboot集成过一次ureport,比较简单,加个注解加个配置文件就跑起来了。这次使用公司项目集成的时候遇到了不小的麻烦,由于网上关于ureport的相关文档以及使用经验帖少之又少,所以避免以后的老铁们遇到麻烦,将我的集成过程贴出来!先简要说一下思路:

  1. 在pom.xml中引入ureport依赖
  2. 在web.xml中引入相关servlet拦截
  3. 在web.xml中添加全局监听器
  4. 在resources目录下创建一个能让spring访问到的ureport配置文件
  5. 在resources目录下创建新的据库连接文件

具体实施步骤

1.引入pom依赖


			com.bstek.ureport
			ureport2-console
			2.2.9

2.web.xml文件中添加ureport拦截器
注意:servlet-mapping中配置url-pattern的参数必须是" /ureport/* "
否则会导致访问不到ureport的相关url

  
    ureportServlet
    com.bstek.ureport.console.UReportServlet
  
  
  
    ureportServlet
    /ureport/*
  

3.web.xml文件中添加全局监听器,下面是官网的配置全局监听的代码:
注意:全局监听器只能配置一个,如果你的项目中曾经已经配置过全局监听器就不必再配了


    org.springframework.web.context.ContextLoaderListener


    contextConfigLocation
    classpath:ureport-console-context.xml

不管你是什么项目只能有一个ContextLoaderListener,我的项目中对这个监听器进行了封装,之前不太清楚,多配了一次导致错误。后面我会贴出我的配置方法,供大家参考。

  
    
			com.不可描述的监听器,无论怎么封装这个监听器都是继承ContextLoaderListener
	
  
  
 
  contextConfigLocation
   	
      classpath*:/com/easy/asgi/app/web/configure/framework.xml
      classpath*:/custom.xml
      classpath*:/spring-activiti.xml
      classpath*:/spring-quartz.xml
      classpath*:/wfLogRecord.xml
      classpath*:/spring-context-ureport.xml  
      classpath*:/datasource.xml 
  

大家可以看到我的context-param中下面包含了多个配置文件,上面五个都可以忽略因为是我自己项目的文件,你们肯定没有哈。

4.在resources目录下创建一个ureport配置文件,名字随意,可读即可。我这是ureport-console-context.xml
目的是让spring加载到ureport



    


ureport-console-context.xml创建好之后将其放到web.xm文件中的context-parm标签下,参考步骤3

5.创建数据库配置文件(最关键的一步)
本项目数据库连接配置采用的是properties模式。配置ureport之前项目直接访问这个文件就可以正常启动了,但是集成了ureport之后要做点改动。

  1. 首先在resources目录下创建一个datasource.xml文件(名称随意,可读即可)
  2. datasource内容如下



    
    
        
            classpath:你自己的项目的数据库文件名称.properties
        
    
    
    
    



 3.然后要将你刚才创建的datasource.xml文件继续放进web.xml文件中的context-parm标签下,目的是让spring知道你新的数据库库访问方式。参考步骤3。实际上就是做了个搭桥。

到这集成ureport就结束了,希望能帮助到大家,能在这个上面减少浪费的时间。其中为什么要重新配置数据库文件参考下面第一个链接。
参考: https://www.4spaces.org/deploy-ureport2-on-java-maven-project/
    https://www.w3cschool.cn/ureport/ureport-5j7b2h8l.html

你可能感兴趣的:(JAVA_WEB)