迭代导出word 文档
Map迭代的使用:
Map map = new HashMap() ; Iterator it = map.entrySet().iterator() ;
while (it.hasNext())
{
Map.Entry entry = (Map.Entry) it.next() ;
Object key = entry.getKey() ;
Object value = entry.getValue() ;
}
Jsp页面
function exportWord(){
var data = setData();
jQuery.post("http://localhost:8080/expWord/GKBX29_word.jsp",data,function(data1){
var url = data1;
document.getElementById("wordUrl").value = url;
window.open(url);
});
}
function setData(){
var data = {};
data.author='zzz';
data.projectName = '<bean:write property="CommonMain/title"/>'; //项目名称
data.mainId = '<bean:write property="CommonMain/mainId"/>';
data.meetingSite = document.getElementById("meetingSite").value;
data.purchaseDep = document.getElementById("purchaseDep").value;
data.meetingPerson = document.getElementById("meetingPerson").value;
data.meetingContent = "其他";
data.meetingDate = document.getElementById("meetingDate").value;
data.manager = document.getElementById("manager").value;
data.purchaseState = document.getElementById("purchaseState").value;
data.purchaseContent = document.getElementById("purchaseContent").value;
data.purchasePriceContent = document.getElementById("purchasePriceContent").value;
data.purchaseProvider = document.getElementById("purchaseProvider").value;
return data;
}
GKBX29_word.jsp
<%@page import="java.util.List"%>
<%@page import="com.boco.eoms.bizlets.wfworksheet.util.SysoutLog"%>
<%@page import="java.util.Iterator"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.util.Map"%>
<%@page import="com.boco.eoms.word.client.word"%>
<%@page import="com.boco.eoms.worksheet.util.DBUtil"%>
<%
request.setCharacterEncoding("UTF-8");
String pakageAll="";
String mainId = request.getParameter("mainId");
if(mainId != null){
// 查询采购包和标段
String sql = "select * from WS_PREPARATORYSHEET_PROVIDER where main_id = "+mainId;
List list = DBUtil.getListResultBySQL(sql);
int i=0;
Iterator it = list.iterator() ;
while (it.hasNext())
{
i++;
Map map = (Map) it.next() ;
String id=(String)map.get("id");
String name=(String)map.get("name");
String pakage=(String)map.get("pakage");
String amount=(String)map.get("amount");
String price=(String)map.get("price");
String totalPrice=(String)map.get("totalPrice");
pakageAll +=i+"、" +pakage+"采购包由综合排名第一的"+name+"的公司负责供货(或提供**服务),采购价格为"+price+"";
} }
word w = new word();
Map map = new HashMap();
map.put("pakageAll", pakageAll);
String url = w.replacWordByMap(map, "GKBX29Activity");
response.getWriter().write(url);
%>
DBUtil.java
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map; import com.primeton.bp.srm.ExprHelper;
/**
* @author Administrator
* @version 1.0
* @date 2011-11-29
* @class_displayName DBUtil
*/ public class DBUtil {
public static String[] getFieldValuesAsStringArray( String sql )
{
Connection conn = null;
Statement smt = null;
ResultSet rs = null;
try
{
conn = ExprHelper.getConnection();
smt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
rs = smt.executeQuery(sql);
rs.last();
String[] array = new String[rs.getRow()];
int i = 0;
rs.beforeFirst();
while(rs.next())
{
array[i++] = rs.getString(1);
}
return array;
}
catch( Exception e )
{
System.out.println(e.getMessage());
return null;
}
finally
{
try
{
if( rs != null )
rs.close();
}
catch( Exception e2 )
{
}
try
{
if( smt != null )
smt.close();
}
catch( Exception e2 )
{
}
try
{
if( conn != null )
conn.close();
}
catch( Exception e2 )
{
}
}
}
public static String getSingleResult(String GET_COLUMN,String SET_COLUMN,String SET_COLUMN_PARAM,String TABLENAME)
{
Connection conn = null;
Statement smt = null;
ResultSet rs = null;
try
{
conn = ExprHelper.getConnection();
smt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
String sql = "select "+GET_COLUMN+" from "+TABLENAME+" where "+SET_COLUMN+ "='"+SET_COLUMN_PARAM+"'";
rs = smt.executeQuery(sql);
String result="";
if(rs.next())
{
result = rs.getString(1);
}
return result;
}
catch( Exception e )
{
System.out.println(e.getMessage());
return null;
}
finally
{
try
{
if( rs != null )
rs.close();
}
catch( Exception e2 )
{
}
try
{
if( smt != null )
smt.close();
}
catch( Exception e2 )
{
}
try
{
if( conn != null )
conn.close();
}
catch( Exception e2 )
{
}
}
}
public static Map getResultBySQL(String sql)
{
Connection conn = null;
Statement smt = null;
ResultSet rs = null;
Map resultMap = new LinkedHashMap();
try
{
conn = ExprHelper.getConnection();
smt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
//int resultColumnCount = rs.getMetaData().getColumnCount();
rs = smt.executeQuery(sql);
while(rs.next())
{
resultMap.put(rs.getString(1),rs.getString(2));
}
return resultMap;
}
catch( Exception e )
{
System.out.println(e.getMessage());
return null;
}
finally
{
try
{
if( rs != null )
rs.close();
}
catch( Exception e2 )
{
}
try
{
if( smt != null )
smt.close();
}
catch( Exception e2 )
{
}
try
{
if( conn != null )
conn.close();
}
catch( Exception e2 )
{
}
}
} public static List getListResultBySQL(String sql)
{
Connection conn = null;
Statement smt = null;
ResultSet rs = null;
List list = new ArrayList();
try
{
conn = ExprHelper.getConnection();
smt=conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
//int resultColumnCount = rs.getMetaData().getColumnCount();
rs = smt.executeQuery(sql);
while(rs.next())
{
Map resultMap = new LinkedHashMap();
resultMap.put("id",rs.getString(1));
resultMap.put("name",rs.getString(2));
resultMap.put("pakage",rs.getString(4));
resultMap.put("amount",rs.getString(19));
resultMap.put("price",rs.getString(20));
resultMap.put("totalPrice",rs.getString(23));
list.add(resultMap); }
return list;
}
catch( Exception e )
{
System.out.println(e.getMessage());
return null;
}
finally
{
try
{
if( rs != null )
rs.close();
}
catch( Exception e2 )
{
}
try
{
if( smt != null )
smt.close();
}
catch( Exception e2 )
{
}
try
{
if( conn != null )
conn.close();
}
catch( Exception e2 )
{
}
}
}
}
输出效果:
1、33采购包由综合排名第一的null的公司负责供货(或提供**服务),采购价格为null
2、77采购包由综合排名第一的44的公司负责供货(或提供**服务),采购价格为44
3、888采购包由综合排名第一的null的公司负责供货(或提供**服务),采购价格为null
4、222采购包由综合排名第一的 ee的公司负责供货(或提供**服务),采购价格为4
5、4555采购包由综合排名第一的6的公司负责供货(或提供**服务),采购价格为6
迭代导出word 文档的更多相关文章
- .NET通过调用Office组件导出Word文档
.NET通过调用Office组件导出Word文档 最近做项目需要实现一个客户端下载word表格的功能,该功能是用户点击"下载表格",服务端将该用户的数据查询出来并生成数据到Word ...
- C# 导出word文档及批量导出word文档(1)
这里用到了两个dll,一个是aspose.word.dll,另外一个是ICSharpCode.SharpZipLib.dll,ICSharpCode.SharpZipLib.dll是用于批量 ...
- C# 导出word文档及批量导出word文档(4)
接下来是批量导出word文档和批量打印word文件,批量导出word文档和批量打印word文件的思路差不多,只是批量打印不用打包压缩文件,而是把所有文件合成一个word,然后通过js来调用 ...
- C#导出Word文档开源组件DocX
1.帮助文档,这东西找了很久,而且它版本很旧,还是英文,W8.1系统上打不开 http://download.csdn.net/detail/zuofangyouyuan/7673573 2.开源网址 ...
- freemarker导出word文档——WordXML格式解析
前不久,公司一个项目需要实现导出文档的功能,之前是一个同事在做,做了3个星期,终于完成了,但是在项目上线之后却发现导出的文档有问题,此时,这个同事已经离职,我自然成为接班者,要把导出功能实现,但是我看 ...
- 自动生成并导出word文档
今天很荣幸又破解一现实难题:自动生成并导出word文档 先看页面效果: word效果: 代码: 先搭建struts2项目 创建action,并在struts.xml完成注册 <?xml vers ...
- Java 用Freemarker完美导出word文档(带图片)
Java 用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...
- freemarker导出word文档
使用freemarker导出word文档的过程 **************************************************************************** ...
- 【Java】导出word文档之freemarker导出
Java导出word文档有很多种方式,本例介绍freemarker导出,根据现有的word模板进行导出 一.简单导出(不含循环导出) 1.新建一个word文件.如下图: 2.使用word将文件另存为x ...
随机推荐
- MySQL-视频跟随练习笔记
在表中添加某列 alter table tbl_user add email varchar(50); 在表中删除某列 alter table tbl_user drop email; 重命名某列 a ...
- HDU 5144 NPY and shot(三分法)
当时做这道题时一直想退出物理公式来,但是后来推到导数那一部分,由于数学不好,没有推出来那个关于Θ的最值,后来直接暴力了,很明显超时了,忘了三分法的应用,这道题又是典型的三分求最值,是个单峰曲线,下面是 ...
- 关于 keybd_event (vb篇)
最近有个VB的项目,做到64位的win7上,传统的VB6.0的sendkeys()函数没法用,可能是由于微软的证书验证机制造成的,于是最常用的一句话指令没法用了“SendKeys "{Hom ...
- string与stringbuilder的区别
1.分析string与stringbuilder的区别,我们先来看下面一段代码 首先我们使用string进行字符串的拼接 class Program { static void Main(string ...
- HTML中属性ID和属性NAME的区别(转)
ID和Name都可以用来标识一个标记,Javascript分别有两个方法getElementById和getElementByName来定位Dom节点. 区别如下: 1.我们知道在网页做Post提交时 ...
- asp.net微信开发第十篇----使用百度编辑器编辑图文消息,上传图片、微信视频
经过几天的资料收集,终于完成了该编辑器的图片上传,视频插入功能,视频插入功能主要借用了该编辑器的插入iframe功能,如原始插件图: 修改后的插件图如下(其中我隐藏掉了一些不需要使用的插件功能): 配 ...
- Asp.Net Mvc MapRoute .html不起作用(转)
RegisterRoutes 注册路由示例配置: public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRo ...
- SqlServer数据库设计,纠结的问题,有胆你就来!
最近,小菜遇到了数据库设计上的一个问题,希望各位大侠再次,直抒己见,帮忙分析一下.也可有更好的设计,请直接提出来. 要求:数据库(SQL Server 2005)存储每个学生,单个客观题答案.分数,主 ...
- 引号 shell
在学些shell的 grep, awk, sed 中,发现<Linux 与Unix Shell 编程 指南>书中用大多都是单引号. 一开始我总在寻思,为什么用单引号,明明双引号也是行的呀. ...
- 如何给report自定义page number
问题描述: report在设置分页后会自动分页,但是有默认的page number,现在的问题是有时default page number不能满足我们的需求,此时就需要自定义page number. ...