ureport2用springbean方式打印报表 ,传递的参数太长出不来,如何解决?

ureport2用springbean 方式打印报表 ,传递的参数太长出不来,有没有办法解决啊

你用的什么参数呀

  • 这篇博客: ureport2使用bean数据源设计数据中的 二、Spring上下文中定义好的一个Bean来作为数据源 (SpringBean数据源配置) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 注意:(在页面用SpringBean数据源配置链接数据库注意,不要刷新浏览器,刷新之后链接会清空)
    在这里插入图片描述
    在这里插入图片描述

     
     package com.bstek.ureport.test.demo; 
     import org.apache.commons.lang.RandomStringUtils;
     import org.apache.commons.lang3.RandomUtils;
     import org.springframework.stereotype.Component; 
     import java.util.ArrayList;import java.util.HashMap;
     import java.util.List;import java.util.Map; 
       /** 
       * 声明一个类,相当于一个配置文件 bean → 注解@Component 
       * 把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/> 
      */
      @Component
      public class TestBean {   
       /**     
        * 方法必须包含三个参数:String,String,Map  
        * @return 集合类型 ,包含字段:id,name,salary     
        */    
        public List<Map<String, Object>> loadReportData(String dsName, String datasetName, Map<String, Object> parameters) {        
            List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();        
                for (int i = 0; i < 1000; i++) {            
                // 模拟数据            
                Map<String, Object> m = new HashMap<String, Object>();           
                     m.put("id", i);            
                     m.put("name", RandomStringUtils.random(10, true, false)); 
                     m.put("salary", RandomUtils.nextInt() + i);            
                     list.add(m);        
                 }        
             return list;    
         }     
         /**     
         * @return 对象类型 ,类型:com.bstek.ureport.test.demo.User     
         */    
         public List<User> buildReport(String dsName, String datasetName, Map<String, Object> parameters) {        
             List<User> list = new ArrayList<User>();        
             for (int i = 0; i < 1000; i++) {            
                 User m = new User();            
                 m.setId(i);            
                 m.setName(RandomStringUtils.random(10, true, false));            
                 m.setSalary(RandomUtils.nextInt() + i);            
                 list.add(m);        
             }       
              return list;   
         }
    }
    
     package com.bstek.ureport.test.demo; 
     import lombok.Data; 
     @Data
     public class User {    
         private int id;    
         private String name;    
         private int salary; 
     }