现在项目中有一个需求,需要支持批量打印功能,
之前是在jsp页面上存在一个打印按钮,直接将页面内容打印出来,只打印一条记录现在是要批量选择N条记录,然后全部打印出来,大家有什么主意?谢谢了

解决方案 »

  1.   

    现在的需求是 一张单子一张单子打印,单子的内容在jsp页面上显示出来,提供一个按钮 操作打印要做的是,在显示 单子的列表上,增加多选框,一下选择多条记录,然后直接打印,不用出现打印预览.
    不知道描述清楚没?
      

  2.   

    还是没描述清。你的单子就是JSP,借助于网页打印功能打印?你的一个单子占用一个JSP吗?单子列表是什么东西? 一行一行的记录列表?选中一行就打印一个单子?
      

  3.   


    如你所说,jsp页面只是显示只用,真正的打印功能在后台。
    方法很可能是一个类似 public void print(File f)的定义。
    如果是这样 
    你写一个 
    public void printFileList(File[] f){
      for(File file : f){
        print(f);
      }
    }是不是就可以了?选择多个文件,你只要记录他们的文件名就可以了。
      

  4.   

    开始的需求是在数据列表中单击某条记录,然后跳转jsp页面
    页面上提供一个按钮,打印客户觉得一条一条打印很费时间现在的需求是 在数据列表中选择多条记录,直接打印,做到批量的功能
      

  5.   


    不存在你怎么展示的?
    如果不存在 只能打印byte流了
      

  6.   

    输出byte流到临时文件里  然后打印  然后删掉文件
      

  7.   

    jsp页面内容是通过java后台数据返回以后填充形成的.
      

  8.   

    在一堆列表里面选几个数据项,然后跳转到这个jsp页面,那么这个jsp页面的数据,你是否已经做好了样式?
    不涉及到分页吧?
    我觉得你这个情况可以页面直接打印,或者css打印。
    用js调用IE的 window.print() (具体的自己查一下)
      

  9.   

    那就把你后台的内容放到一个List或Array里。
    循环或多线程打印呗。
      

  10.   

    我现在有一种方案,我循环的调用后台的service,然后我根据不同的单据模板填充数据,返回一个生成jsp代码的string 文本,调用java的打印方法,后台打印,不存在返回jsp页面的说法.