public void downLoadDept( HttpServletResponse response) throws Exception{
PageData pd = new PageData();//创建对象
List taskList =(List) ("",pd);//获取所有主任务
String title = "机构信息";//标题
String[] titleList = new String[]{"部门编号", "部门名称", "所属部门编号", "品类", "if36", "ifup","备注"};//表头数组
String[] titleColumnList = new String[]{"DEPT_CODE", "DEPT_NAME", "PID", "INDUSTRY_ID","IF_BIGCITY", "", "REMARK"};//字段数据
int cellNumber = ;//表头长度
//创建webbook对象
HSSFWorkbook wb = new HSSFWorkbook();
//动态创建多个sheet
for (int i= 0; i
String taskName = (i).get("NAME").toString(); //获取主任务名称
String taskid = (i).get("ID").toString();//获取主任务id
("TASK_ID",taskid);//将主任务id,存入对象中
//根据主任务id,获取部门信息
List deptList = (List)("",pd);
//创建sheet
HSSFSheet sheet = ();
//设置sheet名称
(i,taskName);
//获取sheet
HSSFSheet sheetinput = (i);
//在sheet第1行中添加表头
HSSFRow headerRow = ((short) 0);
//设置单元格样式
HSSFCellStyle style = getExcelStyle(wb);
//创建表头单元格
HSSFCell headerCell = null;
//遍历表头
for (int k = 0; k < cellNumber; k++) {
headerCell = ((short) k); //单元格titleList[k]
(titleList[k]);//给单元格赋值
(style);//单元格样式
((short) k, (short) 5766); //设置单元格宽度
}
//循环遍历数据,存入excel中
for (int v = 0; v < ();v++) {
PageData single = (v);
HSSFRow dataRow = ((short) v + 1);//创建行
HSSFCell contentCell = null;//创建单元格
for (int j = 0; j < cellNumber ; j++) {
String TABLE_COLUMN = titleColumnList[j];
String VALUE = "";
//判断map中是否存在key,并且判断key的值是否为空
if((TABLE_COLUMN) && (TABLE_COLUMN) != null && !(TABLE_COLUMN).toString().equals("")){
if(TABLE_COLUMN.equals("IF_BIGCITY")){
VALUE = (TABLE_COLUMN).toString().equals("1")? "是":"否";
}else if(TABLE_COLUMN.equals("INDUSTRY_ID") && ("INDUSTRY_ID") != null && (!("INDUSTRY_ID").equals(""))){
String INDUSTRY_IDS = ("INDUSTRY_ID").toString();//获取品类id字符串
List ids = new ArrayList();//创建list对象
String[] arr = INDUSTRY_IDS.split(",");//将字符串转化成数组
for (int s = 0; s < ; s++) {//遍历数组,将数据放入到对象中
(arr[s]);
}
pd = new PageData();
("ids", ids);//将list放入map中
//根据品类id,获取到品类名称
List listName = (List) ("", pd);
String name = "";
for(int n=0;n
name +=(n).get("INDUSTRY_NAME")+",";
}
if(()>0){
name = (0,()-1);
}
VALUE = name;
}else{
VALUE = (TABLE_COLUMN).toString();
}
}
contentCell = ((short)j);//单元格
(VALUE);//单元格赋值
}
(style);//行添加样式
}
}
//浏览器下载
OutputStream os=null;
try {
os = ();// 取得输出流
();// 清空输出流
("Content-disposition", "attachment; filename=" + new String((title+".xls").getBytes("UTF-8"), "ISO8859-1"));
("text/html;charset=UTF-8");
("application/x-excel");
(os);
();
} catch (IOException e) {
();
}finally {
try {
();
} catch (IOException e) {
();
}
}
}
public static HSSFCellStyle getExcelStyle(HSSFWorkbook wb) {
HSSFCellStyle style = ();
(HSSFCellStyle.ALIGN_CENTER);//水平居中
HSSFFont font = ();
();//字体颜色
((short) 12);//字体大小
("宋体");//字体
(font);
(true);//自动换行
return style;
}