将页面打印成excel
在servlet中调用
try
{
File fileWrite = new File("D:/Write.xls");
fileWrite.createNewFile();
OutputStream os = new FileOutputStream(fileWrite);
ExcelExport.excelExport(os);
response.sendRedirect("shijian.do?method=selSy3");
}
catch(Exception e)
{
e.printStackTrace();
}
将打印的主要代码封装成一个工具类
package cn.com.shxt.util;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import cn.com.shxt.model.Administrator;
import cn.com.shxt.model.User;
import cn.com.shxt.service.AdministratorService;
import cn.com.shxt.service.ShiJianService;
import cn.com.shxt.service.UserService;
import cn.com.shxt.util.FileUploadTool;
import cn.com.shxt.util.Page;
public class ExcelExport extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = -5824318581633781502L;
public static void excelExport(OutputStream os){
List<Map<String, String>> list = new ShiJianService().selSy4();
try{
WritableWorkbook wwb = Workbook.createWorkbook(os);
WritableSheet ws = wwb.createSheet("第一页",0);
Label label = new Label(0,0,"课程名称");
ws.addCell(label);
label = new Label(1,0,"教师姓名");
ws.addCell(label);
label = new Label(2,0,"学生姓名");
ws.addCell(label);
label = new Label(3,0,"实验名称");
ws.addCell(label);
label = new Label(4,0,"实验目的");
ws.addCell(label);
label = new Label(5,0,"实验要求");
ws.addCell(label);
label = new Label(6,0,"实验内容");
ws.addCell(label);
label = new Label(7,0,"实验心得");
ws.addCell(label);
label = new Label(8,0,"成绩");
ws.addCell(label);
label = new Label(9,0,"实验结果");
ws.addCell(label);
for(int i=0;i<list.size();i++){
label=new Label(0,i+1,list.get(i).get("cname"));
ws.addCell(label);
label=new Label(1,i+1,list.get(i).get("aname"));
ws.addCell(label);
label=new Label(2,i+1,list.get(i).get("s_name"));
ws.addCell(label);
label=new Label(3,i+1,list.get(i).get("sname"));
ws.addCell(label);
label=new Label(4,i+1,list.get(i).get("mudi"));
ws.addCell(label);
label=new Label(5,i+1,list.get(i).get("yaoqiu"));
ws.addCell(label);
label=new Label(6,i+1,list.get(i).get("content"));
ws.addCell(label);
label=new Label(7,i+1,list.get(i).get("xinde"));
ws.addCell(label);
label=new Label(8,i+1,list.get(i).get("cj"));
ws.addCell(label);
label=new Label(9,i+1,list.get(i).get("photo"));
ws.addCell(label);
}
wwb.write();
wwb.close();
}catch(Exception e){
System.out.println("生成信息表(Excel格式)时出错:");
e.printStackTrace();
}
}
public String getFileName(){
Date date=new Date();
Long dateL=date.getTime();
String fileName=dateL.toString()+".xls";
return fileName;
}
public void doGet(HttpServletRequest request,HttpServletResponse response){
System.out.print("hahahah");
String fileName=this.getFileName();
File fileWrite=new File("D:/"+fileName);
try {
fileWrite.createNewFile();
OutputStream os=new FileOutputStream(fileWrite);
this.excelExport(os);
response.sendRedirect("/ibatisTest/pages/sucess.jsp");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
try {
response.sendRedirect("/ibatisTest/pages/error.jsp");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
public static void main(String[] args) {
try
{
File fileWrite = new File("D:/taetWrite.xls");
fileWrite.createNewFile();
OutputStream os = new FileOutputStream(fileWrite);
ExcelExport.excelExport(os);
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
将页面打印成excel的更多相关文章
- 关于jsp页面转换成excel格式下载遇到问题及解决
jsp页面转成excel格式的实现思路: 1.使用poi包:poi-bin-3.9-20121203 下载连接地址:http://www.apache.org/dyn/closer.cgi/poi/r ...
- 利用Microsoft.Office.Interop.Excel 将web页面转成PDF
网上有很多将Web页面转成PDF的方法,还有许多收费的第三方插件.其实利用Office 自带的将EXCEL发布成PDF的功能就可以实现,如果你的需求没有多复杂,可以采用笔者的方法. 首先将web页面h ...
- Microsoft.Office.Interop.Excel的用法以及利用Microsoft.Office.Interop.Excel将web页面转成PDF
1.常见用法 using Microsoft.Office.Interop.Excel; 1)新建一个Excel ApplicationClass ExcelApp = New A ...
- 【04】基础:将采集结果转成Excel
前面的教程说了,数据抓取完毕之后,数据以xml格式的形式存储在本地文件夹中. 下面简单地说一下如何将保存在本地的XML文件转成Excel格式. 第一步:压缩文件 进入本地DataScraperWork ...
- MySQL要导出成excel的方法
MySQL 要导出成 excel 文件很简单,执行类似这样的命令: select * from 某个表 into outfile 'd:/文件名.xls'; 上述命令你在服务器上执行,就导在 ...
- 第十二篇 C# 将HTML 直接转成Excel
前些天写项目的时候,客户要求用HTML表格把信息展示出来,后面还要用展示的内容要导出Excel.本来想想在后台操作的话估计是要做死了,但是经过细想,Excel能够发布成HTML,一定也可以由HTML转 ...
- 如何将WORD表格转换成EXCEL表格
WORD和EXCEL都可以制作表格,但WORD表格与EXCEL表格之间有着很明显的差距,所以在办公中经常会需要将WORD转换成EXCEL,今天小编就教大家一招将WORD表格转换成EXCEL表格. 操作 ...
- 怎样将PDF文件转换成Excel表格
PDF文件怎样转换成Excel表格呢?因为很多的数据信息现在都是通过PDF文件进行传输的,所以很多时候,信息的接受者都需要将这些PDF文件所传输的数据信息转换成Excel表格来进行整理,但是我们应该怎 ...
- 利用itext将html页面转成pdf(不模糊)
1.maven项目进入依赖 <dependency> <groupId>org.xhtmlrenderer</groupId> <artifactId> ...
随机推荐
- 本地mysql数据库root密码丢失修改方法
1,停止数据库 2,cd /etc/mysql 3,利用vim命令打开mysql配置文件my.cnf,在mysqld进程配置文件中添加skip-grant-tables,添加完成后,执行wd保存. ...
- Java数组和C++异同
一.定义和初始化 1.Jave定义和初始化: Java:两种方式 Type[] A; Type A[]; 定义时不能指定数组的长度 静态初始化: A = new Type[][Ele1,Ele2 ...
- vue学习笔记
来公司以后就一直在用vue框架,不管是业务代码,还是做vue组件.关于vue有一些点是文档中没有提及的,记录一下以便以后查询- 一.Vue的特点 新一代 Vue.js 框架非常关注如何用极少的外部特性 ...
- CoInitialize浅析二
最近工作比较忙,在粗略分析了CoInitialize之后我们一直没有再深入研究,下面言归正传.前面我们初步了解到了CoInitialize其实是通过调用CoInitializeEx来实现功能的,而后者 ...
- ArcGIS图层介绍
什么是图层 图层是用来在 ArcGIS 产品套件中显示地理数据集的机制.每个图层代表一种数据集(可以是地图服务.图形或是矢量数据),并指定该数据集是如何描绘使用一组属性的. 包含一个地图控件的每个应用 ...
- 分布式blog系统 TFS总结
解决的问题 文件总量太大 一台服务器无法存放 只能放在网络集群中分节点存放 也就是通过屏蔽网络部分 形成一个“ one big CPU” 和 “one big disk” .Client只需要向 ...
- A Look At Android Support Annotations
转自:https://asce1885.gitbooks.io/android-rd-senior-advanced/content/shen_ru_qian_chu_android_support_ ...
- dotproject 2.1.8 甘特图中文乱码解决
1.安装中文语言包 下载地址为http://www.dotproject.net/dpDownloads/Language_Packs/Chinese_Simplified_(GBK)/dotproj ...
- web view调h5的方法死活调不到
(WebViewJavascriptBridge注册方法都能调用,只有callhandlename时无论如何也没响应)这个问题真是纠缠我好久了 webview评论区刷新问题终于找到原因了 ,我试着把咨 ...
- 信号量 semaphore 和 @synchronized 的运用
1. //创建全局队列 dispatch_queue_t queue = dispatch_get_global_queue(0, 0); //创建信号量 dispatch_semaphore_t s ...