import java.io.OutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class DownloadAction extends Action {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
//create HSSFWorkbook
HSSFWorkbook workbook = new HSSFWorkbook();
//create HSSFSheet named user
HSSFSheet sheet = workbook.createSheet("user");
for(int i=0;i<5;i++){
//create row
HSSFRow row = sheet.createRow(i);
for(int j=0;j<3;j++){
//create cell
HSSFCell cell = row.createCell((short)(j));
//filled cell
cell.setCellValue(i+"/"+j);
}
}
//set response content type
response.setContentType("application/vnd.ms-excel");
//set the name of download file
response.addHeader("Content-Disposition","attachment;filename=user.xsl");
//get response stream
OutputStream out=response.getOutputStream();
//add workbook to OutpustStream
workbook.write(out);
out.close();
return mapping.findForward("success");
}
}