java 导出Excel文件
2010-11-09 11:22
316 查看
这是项目其中的一个功能
1前台:
{iconCls:'icon-out',text:"导出文件",handler:function(){
judgePurview('teacher.0905?forward=importOut',function (){
Ext.Ajax.request({
url:'teacher.0905?method=importOut',
success:function(a,b){
var obj = Ext.decode(a.responseText);
window.open(obj.msg,'_top');
}
});
});
}}
2后台:
one:
public void importOut(HttpServletRequest request, HttpServletResponse response) throws IOException{
String path = teacherDao.importOut();
response.getWriter().print("{msg:'"+path+"'}");
teacherDao.addNewPrompt("insertNewPrompt", getNewPrompt(request, "导出了教师信息", "excel", "#"));
}
two: public String importOut() { List<Teacher> list = getTeacherList(); Label lable = null; int rows = 0; int cols = 0; String excelPath = PathUtil.getUploadPath(); excelPath = excelPath + "excel"; File f = new File(excelPath); if(!f.exists()){ f.mkdir(); } excelPath = excelPath + "/teacherOut.xls"; OutputStream outputStream = null; try { outputStream = new FileOutputStream(excelPath); WritableWorkbook workbook = Workbook.createWorkbook(outputStream); WritableSheet writableSheet = workbook.createSheet("教师", 0); for (Teacher teacher : list) { if (rows == 0) { firstRows(writableSheet); rows++; } cols = 0; String teacherNo = teacher.getTeacherNo(); lable = new Label(cols++, rows, teacherNo); writableSheet.addCell(lable); String name = teacher.getName(); lable = new Label(cols++, rows, name); writableSheet.addCell(lable); String spell = teacher.getSpell(); lable = new Label(cols++, rows, spell); writableSheet.addCell(lable); String sex = teacher.getSex(); if ("0".equals(sex)) { lable = new Label(cols++, rows, "女"); writableSheet.addCell(lable); } else { lable = new Label(cols++, rows, "男"); writableSheet.addCell(lable); } String cornet = teacher.getCornet(); lable = new Label(cols++, rows, "" + cornet); writableSheet.addCell(lable); String nation = teacher.getNation(); lable = new Label(cols++, rows, nation); writableSheet.addCell(lable); String specialty = teacher.getSpecialty(); lable = new Label(cols++, rows, specialty); writableSheet.addCell(lable); String education = teacher.getEducation(); lable = new Label(cols++, rows, education); writableSheet.addCell(lable); String mobilePhone = teacher.getMobilePhone(); lable = new Label(cols++, rows, mobilePhone); writableSheet.addCell(lable); String tellPhone = teacher.getTellPhone(); lable = new Label(cols++, rows, tellPhone); writableSheet.addCell(lable); String workYears = teacher.getWorkYears(); lable = new Label(cols++, rows, "" + workYears); writableSheet.addCell(lable); String cardType = teacher.getCardType(); lable = new Label(cols++, rows, cardType); writableSheet.addCell(lable); String cardID = teacher.getCardID(); lable = new Label(cols++, rows, cardID); writableSheet.addCell(lable); String identtityCard = teacher.getIdentityCard(); lable = new Label(cols++, rows, identtityCard); writableSheet.addCell(lable); String birthday = teacher.getBirthday(); lable = new Label(cols++, rows, birthday); writableSheet.addCell(lable); String image = teacher.getImage(); lable = new Label(cols++, rows, image); writableSheet.addCell(lable); String address = teacher.getAddress(); lable = new Label(cols++, rows, address); writableSheet.addCell(lable); String registerTime = teacher.getRegisterTime(); lable = new Label(cols++, rows, registerTime); writableSheet.addCell(lable); String remark = teacher.getRemark(); lable = new Label(cols++, rows, remark); writableSheet.addCell(lable); rows++; } workbook.write(); workbook.close(); } catch (Exception e) { e.printStackTrace(); } finally { try { outputStream.close(); } catch (IOException e) { e.printStackTrace(); } } return "excel/teacherOut.xls"; } three: public List<Teacher> getTeacherList() { List<Teacher> list = new ArrayList<Teacher>(); try { list = sqlMapClient.queryForList("selectAllTeacher"); } catch (SQLException e) { e.printStackTrace(); } return list; } four: public static String getUploadPath(){ String classPath = getClassPath(); String path = StringUtil.append(StringUtil.append(classPath.substring(1, classPath.length()), Constant.SLASH), Constant.SUPERIOR)+Constant.SUPERIOR; return path; } five: /*** * * 〈获得第一行数据信息〉 * @param [writableSheet] [WritableSheet的对象] * @return [void] */ public void firstRows(WritableSheet writableSheet) throws RowsExceededException, WriteException { Label lable = null; int cols = 0; int rows = 0; List<Element> list = ParseXlsXmlUtil.getAttributeList("teacherHead"); for (Element element : list) { lable = new Label(cols++, rows, el 1fff8 ement.getValue()); writableSheet.addCell(lable); } }
阅读更多
相关文章推荐
- JAVA 导入导出EXCEL文件操作
- 大数据量导出Excel的方案 java 大excel文件
- JAVA利用POI导出Excel模板文件
- Java导出Excel文件(jxl.jar版)(详细解读)
- [java]实现导出Excel文件和XML文件
- 在java jasperreport 导出pdf excel html 文件到本地
- java生成-excel-并导出文件
- .大数据量导出Excel的方案 java 大excel文件
- 将数据导出到Excel(java操作Excel)-单文件
- java操作office和pdf文件(四)页面列表导出cvs,excel、pdf报表.
- java导出excel java操作文件、文件夹 java制作zip
- java导出文件之Excel(Poi)上
- java项目中Excel文件的导入导出
- Java导出excel文件简单实现
- java导出Excel文件,直接可以下载,然后更新状态,刷新页面
- 【javaWeb】Struts 2导出excel文件
- Java程序员从笨鸟到菜鸟之(一百零六)java操作office和pdf文件(四)页面列表导出cvs,excel、pdf报表.
- JXL 读取 Excel java中jxl导出数据到excel的例子 上传文件
- java生成excel和下载导出文件的工具类
- Java数据导出(写)Excel文件 解析