您的位置:首页 > 其它

导出excel 利用xml文件

2015-10-12 12:16 330 查看
controller中

@RequestMapping("/exportExcel1.jhtml")

public String exportExcel1(HttpServletRequest req, HttpServletResponse resp,

HttpSession session, DataArea dataArea, ModelMap modelMap) {

try {

List<DataArea> list = dataAreaService.list(dataArea);

modelMap.put("list", list);

// 使用xml模板导出

String exlName = "地域投放表.xls";

resp.addHeader("Content-Disposition", "attachment; filename="

+ new String(exlName.getBytes("GBK"), "ISO8859-1"));

resp.setContentType("application/vnd.ms-excel;charset=UTF-8");

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return "data/dataArea/export1.xml";

}

*.xml.jsp

<%@page contentType="text/html;charset=utf-8" language="java"%>

<%@page isELIgnored="false"%>

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>

<%@taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>

<%@taglib prefix="afocus" uri="http://www.afocus.com.cn/jsp/core"%>

<?xml version="1.0"?>

<ss:Workbook xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">

<ss:Worksheet ss:Name="Sheet1">

<ss:Table>

<ss:Column ss:Width="50"/>

<ss:Column ss:Width="80"/>

<ss:Column ss:Width="80"/>

<ss:Column ss:Width="80"/>

<ss:Column ss:Width="50"/>

<ss:Column ss:Width="100"/>

<ss:Row>

<ss:Cell>

<ss:Data ss:Type="String">序号</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">投放渠道</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">类别</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">省份</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">指数</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">时间</ss:Data>

</ss:Cell>

</ss:Row>

<c:forEach items="${list}" var="dataArea" varStatus="s">

<ss:Row>

<ss:Cell>

<ss:Data ss:Type="Number">${s.index+1}</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">${dataArea.platformName}</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">${dataArea.categoryName}</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String">${dataArea.province}</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="Number">${dataArea.indexNum}</ss:Data>

</ss:Cell>

<ss:Cell>

<ss:Data ss:Type="String"><fmt:formatDate type="date" value="${dataArea.date}"

pattern="yyyy-MM-dd" /></ss:Data>

</ss:Cell>

</ss:Row>

</c:forEach>

</ss:Table>

</ss:Worksheet>

</ss:Workbook>

若是应用了tiles 或sitematch等模板 要过滤掉

<excludes>

<pattern>/*/*dataArea/exportExcel1.jhtml*</pattern>

<pattern>/*/*/*dataArea/exportExcel1.jhtml*</pattern>

</excludes>

注意此处jhtml后要加* ,否则不能正常导出
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: