jsp中使用EXCEL组件将表格导出为EXCEL文件
此种方法使用excel的组件,要求客户端必须装有excel程序。方法是将表格中的每个td标签的内容取出,作为excel文件中一个单元格的内容。
1、在网页中添加java脚本
function AutomateExcel(tableid,unusecolumn)
{
// 获取excel组件
var oXL = new ActiveXObject("Excel.Application");
//创建工作薄
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
var table = document.getElementById(tableid);
var hang = table.rows.length;
var lie = table.rows(0).cells.length;
for (i=0;i<hang;i++)
{
for (j=0;j<lie-unusecolumn;j++)
{
oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText;
}
}
oXL.Visible = true;
oXL.UserControl = true;
}
2、增加导出按钮
<input class="Noprint" type="Button" onclick="AutomateExcel('ordertable','0');" value="导出">
AutomateExcel函数的第一个参数是要导出的表格的ID,第二个参数表示导出时表格末尾要忽略的列数,如不需要忽略,请设置为‘0’
3、OK!
相关文档:
1.request对象
该对象封装了用户提交的信息,通过调用该对象的响应的方法可以获取用户提交的信息。
当request对象获取用户提交的汉字字符时,会产生乱码,由下面的方法可以解决:
Sting s2 = new String(s1.getBytes("iso8859-1"),"GB2312")进行转换。
request常用的方法 ......
JSP(Java Server Page)
JSP是服务器端运行的页面,JSP本就是一个文档,他不仅可以包含静态的HTML代码,也可以包含动态的JAVA代码,服务器容器可以将JSP转换成Servlet发布,并接受请求。
Jsp文件只需放在应用文件下就可以了。
JSP例子:
<html>
<head><title>time</title></head>
& ......
分两种:
Get方式传递数据解决办法:
<%
String username = request.getParameter("username");
byte[] bytes = username.getBytes("iso-8859-1");
String result = new String(bytes, "gb2312");
out.print(result);
%>
Post方式解决办法:request.setCharacterEncoding("gb2312");
......
自己分页,下一篇会介绍使用diasplaytag组件。
使用mysql5, 有个数据表user,字段有id, username, password。
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional// ......
使用diasplaytag组件。
使用mysql5, 有个数据表user,字段有id, username, password。
使用displaytag需导入displaytag-1.1.jar,和
commons-logging
commons-lang
commons-collections
commons-beanutils
log4j
itext (optional, for pdf/rtf export)
然后在JSP页面中放入<%@ taglib uri="http://display ......