//form表單請求
var url="<%=path%>/xxxx/export.action?groupId="+groupId+"&aaa="+aaa;
$("#exportForm").attr("action",url);
$("#exportForm").submit();
public String export()
{
HttpServletResponse response = null;
OutputStream out = null;
try
{
response = ServletActionContext.getResponse();
out = response.getOutputStream();
response.setHeader("Content-disposition", "attachment; filename=" + "export.xls");
response.setContentType("application/msexcel;charset=UTF-8");// 設置類型
response.setHeader("Pragma", "No-cache");// 設置頭
response.setHeader("Cache-Control", "no-cache");// 設置頭
response.setDateHeader("Expires", 0);// 設置日期頭
String groupId = getRequest().getParameter("groupId");
String aaa = getRequest().getParameter("aaa");
//處理中文亂碼
aaa = new String(aaa.getBytes("ISO8859-1"), "UTF-8");
// 設置表頭
String[] tableHeader = { "表頭1", "表頭2"};
short cellNumber = (short) tableHeader.length;// 表的列數
HSSFWorkbook workbook = new HSSFWorkbook(); // 創建一個excel
HSSFCell cell = null; // Excel的列
HSSFRow row = null; // Excel的行
HSSFSheet sheet = workbook.createSheet("sheet1"); // 創建一個sheet
HSSFHeader header = sheet.getHeader();// 設置sheet的頭
header.setCenter("表");
row = sheet.createRow(0);
row.setHeight((short) 400);
for (int k = 0; k < cellNumber; k++)
{
cell = row.createCell(k);// 創建第0行第k列
sheet.setColumnWidth(k, 4000);// 設置列的寬度
cell.setCellValue(tableHeader[k]);// 設置第0行第k列的值
}
//獲取數據源
List<xxx> actList = xxxService.getPageList();
int i = 0;
for (xxxx p : actList)
{
row = sheet.createRow((short) (i + 1));// 創建第i+1行
cell = row.createCell(0);// 創建第i+1行第0列
cell.setCellValue("值1");// 設置第i+1行第0列的值
cell = row.createCell(1);
cell.setCellValue("值2");
++i;
}
workbook.write(out);
out.flush();
workbook.write(out);
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
if (out != null)
{
out.close();
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
return null;
}