public String exportReport() {
HttpServletRequest request = ServletActionContext.getRequest();
String a = request.getParameter("a");
//第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
//第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("图书类别信息");
//第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int)0);
row.createCell((short)0).setCellValue(a);
HSSFRow row1 = sheet.createRow((int)1);
//第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); //创建一个居中格式
HSSFCell cell = row1.createCell((short)0);
cell.setCellValue("编号"); cell.setCellStyle(style);
cell = row1.createCell((short)1);
cell.setCellValue("类别名称"); cell.setCellStyle(style);
cell = row1.createCell((short)2);
cell.setCellValue("可借天数"); cell.setCellStyle(style);
cell = row1.createCell((short)3);
cell.setCellValue("罚款金额"); cell.setCellStyle(style);
//第五步,写入实体数据 实际应用中这些数据从数据库得到,
// if(booktype.getStatType()==null)
// {
// temandhumInfo.setStatType("0");
// }
List<Booktype> booktypelist = booktypeBiz.getBooktypeAll();
for (int i = 0; i < booktypelist.size(); i++)
{
row1 = sheet.createRow((int)i+2);
Booktype info = booktypelist.get(i);
//第四步,创建单元格,并设置值
row1.createCell((short)0).setCellValue(info.getId());
row1.createCell((short)1).setCellValue(info.getTypeName());
row1.createCell((short)2).setCellValue(info.getBydays());
row1.createCell((short)3).setCellValue(info.getFine());
// cell = row1.createCell((short)4);
// cell.setCellValue(info.getCollecttime());
}
//第六步,将文件存到指定位置
// try
// {
// FileOutputStream fout = new FileOutputStream("E:/"+tableName+"监测表.xls");
// wb.write(fout);
// fout.close();
// } catch (Exception e)
// {
// e.printStackTrace();
// }
//弹出直接打开或者下载(可以选择文件下载保存路径)
HttpServletResponse response = ServletActionContext.getResponse();
response.reset();
response.setCharacterEncoding("UTF-8");
response.setContentType("application/vnd.ms-excel"); //保证不乱码
try
{
response.setHeader("Content-Disposition","attachment;" + " filename=" + new String(a.getBytes(), "ISO-8859-1"));
}
catch (UnsupportedEncodingException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
try
{
ByteArrayOutputStream oss =new ByteArrayOutputStream();
OutputStream os = response.getOutputStream();
wb.write(oss);
byte temp[] = oss.toByteArray();
ByteArrayInputStream in = new ByteArrayInputStream(temp);
int n = 0;
while ((n = in.read(temp)) >0) {
os.write(temp, 0, n);
}
os.flush();
os.close();
} catch(Exception e)
{
e.printStackTrace();
}
return null;
}
public Booktype getBooktype() {
return booktype;
}
public void setBooktype(Booktype booktype) {
this.booktype = booktype;
}
public BooktypeBiz getBooktypeBiz() {
return booktypeBiz;
}
public void setBooktypeBiz(BooktypeBiz booktypeBiz) {
this.booktypeBiz = booktypeBiz;
}
HttpServletRequest request = ServletActionContext.getRequest();
String a = request.getParameter("a");
//第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
//第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("图书类别信息");
//第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int)0);
row.createCell((short)0).setCellValue(a);
HSSFRow row1 = sheet.createRow((int)1);
//第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); //创建一个居中格式
HSSFCell cell = row1.createCell((short)0);
cell.setCellValue("编号"); cell.setCellStyle(style);
cell = row1.createCell((short)1);
cell.setCellValue("类别名称"); cell.setCellStyle(style);
cell = row1.createCell((short)2);
cell.setCellValue("可借天数"); cell.setCellStyle(style);
cell = row1.createCell((short)3);
cell.setCellValue("罚款金额"); cell.setCellStyle(style);
//第五步,写入实体数据 实际应用中这些数据从数据库得到,
// if(booktype.getStatType()==null)
// {
// temandhumInfo.setStatType("0");
// }
List<Booktype> booktypelist = booktypeBiz.getBooktypeAll();
for (int i = 0; i < booktypelist.size(); i++)
{
row1 = sheet.createRow((int)i+2);
Booktype info = booktypelist.get(i);
//第四步,创建单元格,并设置值
row1.createCell((short)0).setCellValue(info.getId());
row1.createCell((short)1).setCellValue(info.getTypeName());
row1.createCell((short)2).setCellValue(info.getBydays());
row1.createCell((short)3).setCellValue(info.getFine());
// cell = row1.createCell((short)4);
// cell.setCellValue(info.getCollecttime());
}
//第六步,将文件存到指定位置
// try
// {
// FileOutputStream fout = new FileOutputStream("E:/"+tableName+"监测表.xls");
// wb.write(fout);
// fout.close();
// } catch (Exception e)
// {
// e.printStackTrace();
// }
//弹出直接打开或者下载(可以选择文件下载保存路径)
HttpServletResponse response = ServletActionContext.getResponse();
response.reset();
response.setCharacterEncoding("UTF-8");
response.setContentType("application/vnd.ms-excel"); //保证不乱码
try
{
response.setHeader("Content-Disposition","attachment;" + " filename=" + new String(a.getBytes(), "ISO-8859-1"));
}
catch (UnsupportedEncodingException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
try
{
ByteArrayOutputStream oss =new ByteArrayOutputStream();
OutputStream os = response.getOutputStream();
wb.write(oss);
byte temp[] = oss.toByteArray();
ByteArrayInputStream in = new ByteArrayInputStream(temp);
int n = 0;
while ((n = in.read(temp)) >0) {
os.write(temp, 0, n);
}
os.flush();
os.close();
} catch(Exception e)
{
e.printStackTrace();
}
return null;
}
public Booktype getBooktype() {
return booktype;
}
public void setBooktype(Booktype booktype) {
this.booktype = booktype;
}
public BooktypeBiz getBooktypeBiz() {
return booktypeBiz;
}
public void setBooktypeBiz(BooktypeBiz booktypeBiz) {
this.booktypeBiz = booktypeBiz;
}