`

【java_web】web批量分页打印

阅读更多
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<%@ taglib prefix ="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/css/bid.css"/>
<title>批量打印模板</title>
<script type="text/javascript" language="javascript">
    function printOnload(){
    	var count = <s:property value="uriList.size()"/>;
    	var index;
    	for(i = 0;i < count;i++){
           index = i + 1;
           //把iframe的html挪到div上
    	   document.getElementById('page' + index).innerHTML 
              = window.frames[0].document.getElementsByTagName('body')[0].innerHTML;
    	}
    }
</script>
   
<!-- media="print"表示改样式只在打印预览或打印的时候才生效 -->
<style media="print" type="text/css">  
   .NOPRINT{display:none;}  
   .PageNext{page-break-after: always;}  
   .none{}
</style>

</head>

<body onload="printOnload()">
     <!-- 根据urlList,生成<div> <iframe><iframe/></div> 这样格式的页面-->
     <s:iterator value="uriList" status="status1" id="uri">
        <div style="<s:if test='#status1.count != uriList.size()'>page-break-after: always;</s:if>" id="page${status1.count}">
           <iframe src="<%=request.getContextPath() %>${uri }"></iframe>
        </div>
     </s:iterator>
</body> 
</html>

 

思路是这样的,首先得构造一个适合打印的页面,然后直接用浏览器的打印功能就可以了 :

1、后台request保存了一个List<URLObj>,uri属性表示请求地址

2、该打印demo页面,根据List<URLObj>,用struts2标签在body上构建<div><iframe></iframe></div>,iframe打开的是每一个需要批量打印的页面

3、页面加载完成后,调用printOnLoad函数,把iframe里面的html挪到div上

分享到:
评论

相关推荐

    java实现web的打印

    java实现web的打印,可以分页打印,可以批量打印,可以根据格式选择打印

    java 分页、批量删除

    Java 分页和批量删除是Web开发中的两个重要概念,尤其在大数据量的后台管理系统中,它们对于提升用户体验和优化数据库操作至关重要。以下是对这两个主题的详细讲解。 **分页** 分页是网页显示大量数据时常用的一种...

    Java_Side.zip_ecside

    ECSide是一个专为Java开发人员设计的开源框架,尤其适用于构建基于Ajax技术的Web应用程序。在本文中,我们将深入探讨ECSide框架的核心特性和它如何提升数据展现效果。 ECSide,全称Enterprise Control Side,是一个...

    studentManagement_JavaEE_java系统_管理系统java_学生管理_

    5. **分页**:在大量数据下,分页显示是提高用户体验的关键。可以使用JSP的标签库(如JSTL)或自定义标签实现,配合Servlet控制每页的数据量,并提供上一页、下一页的导航。 6. **删除功能**:用户可以选择一个或多...

    阿里云存储OSS操作示例(单、批量上传、删除、分页预览)

    在本示例中,我们将详细探讨如何使用ASP.NET Web版进行阿里云OSS的操作,包括单个文件上传、批量上传以及分页预览的功能。 首先,让我们了解`OssClient`,它是阿里云官方提供的SDK中的核心类,用于与OSS服务进行...

    java\JSP\海量数据分页效率

    在Java Web开发中,JSP(JavaServer Pages)与Servlet常用于构建动态网站,处理大量数据的分页显示是一项常见的需求。本项目聚焦于“海量数据分页效率”,通过一个屏幕录像程序展示了如何高效地处理约3万条数据的...

    java分页插件valuelist

    Java 分页插件Valuelist是一款用于Java Web开发中的实用工具,主要目的是为了在处理大量数据时提高性能和用户体验,通过高效地分页显示数据,避免一次性加载所有数据导致内存压力过大。Valuelist源码的分析对于理解...

    jsp 批量修改, 分页

    本话题将深入探讨如何利用JSP实现数据的批量修改以及分页功能。 批量修改是Web应用程序中常见的需求,尤其在管理大量数据时,能够一次性更新多条记录可以极大地提高效率。在JSP中,批量修改通常涉及以下几个步骤: ...

    基于Spring Mvc的Java Web项目

    【标题】"基于Spring Mvc的Java Web项目"涵盖了多个关键的IT知识点,主要涉及Web开发技术栈,包括Spring MVC、Spring Boot、Java、JavaScript以及MyBatis等。下面将逐一详细解析这些技术及其在项目中的应用。 1. **...

    分页技术、批量插入查找

    在Web开发中,分页技术和批量插入查找是两个非常重要的概念,它们对于提高用户体验和优化数据库性能具有关键作用。下面将详细阐述这两个知识点,并结合`person1.sql`和`Mybatis`来说明如何在实践中应用。 分页技术...

    通用的JSP分页+增删改查+批量删除

    【标题】"通用的JSP分页+增删...总之,"通用的JSP分页+增删改查+批量删除" 是Web开发中必备的技能,理解和掌握这一套流程对于任何Java Web开发者来说都至关重要。通过实践和学习,你可以创建更高效、更易用的Web应用。

    java_jsp项目源码_图书管理系统(struts+hibernate+spring+ext)130221.rar

    本项目是一个基于Java Web技术的图书管理系统,采用了Struts、Hibernate、Spring和Ext等主流框架进行开发。系统主要包括图书信息管理、用户信息管理、借阅管理、图书查询等功能模块,旨在为图书馆提供一个高效、便捷...

    ssm增删改查、分页、批量删除、小实例

    SSM(Spring、SpringMVC、MyBatis)是一个经典的Java web开发框架组合,它将Spring的核心容器、Spring的Web MVC模块以及MyBatis持久层框架整合在一起,为开发者提供了强大的服务。在这个小实例中,我们将探讨如何...

    java-WEB模块物流项目三.docx

    【Java-Web模块物流项目三】是一个基于Java技术的物流管理系统开发项目,主要涉及物流管理中的取派员管理和基础设置模块。以下将详细介绍项目中的关键知识点: 1. **根基设置模块**: - **需求分析**:理解业务...

    SSM框架后台管理系统(学习代码)实现分页、批量删除、查找

    SSM框架,全称为Spring、SpringMVC和MyBatis的组合,是Java Web开发中常用的三大组件。这个后台管理系统的学习代码着重展示了如何利用SSM框架实现数据管理的基本功能,如分页、批量删除和查找。下面将详细介绍这些...

    基于ssm的登陆注册批量增删该查分页模糊查询

    SSM(Spring、SpringMVC、MyBatis)框架是Java Web开发中常见的技术栈,它结合了Spring的IoC容器、Spring MVC的MVC框架和MyBatis的持久层框架,提供了强大的企业级应用开发能力。在这个项目中,开发者运用了这些技术...

    struts2+hibernate(文件批量上传至数据库+Ajax分页显示)

    Struts2和Hibernate是两种非常重要的Java Web开发框架。Struts2主要负责MVC(Model-View-Controller)模式中的控制层,而Hibernate则是一个强大的对象关系映射(ORM)框架,用于处理数据库操作。本项目结合两者实现...

    基于Web的套打方案集粹(转载)

    2. **支持批量打印**:通过JavaScript调用控件方法,轻松实现多份文档的连续打印。 **示例**: 假设有一个框架网页,其中包含一个用于触发打印操作的按钮,以及一个显示已分页HTML文档的框架。当用户点击打印按钮时...

    mysql,jdbc详解,与ibatis对比。批量查询,分页处理。

    - **分页处理**: 在处理大量数据时非常有用,尤其是对于Web应用中的数据展示。常用的分页技术包括使用`LIMIT`和`OFFSET`关键字来限制返回的结果集。 例如,要获取前10条记录,可以使用以下SQL命令: ```sql SELECT ...

    基于SSM框架开发的Java Web MIS系统

    此外,还可以通过调整数据库索引、批量插入和分页查询等方式提升系统性能。 7. **安全性**:除了Spring Security外,还需关注XSS、CSRF等安全问题,使用HTTPS协议保证数据传输安全,以及对敏感数据进行加密。 8. *...

Global site tag (gtag.js) - Google Analytics