最近公司项目中需要导出excel。因为之前使用过jxls,导出是通过模板,给模板里填充值,模板可以自定义格式,使用起来特别方便。于是决定使用它了。
我使用的是jxls-core-1.0.6.jar。是maven项目。主要说下多sheet页的生成方式,以及填充图片和多sheet页边距解决办法。
总的生成方法如下:
/**
*
*@Title: export
*@Description:
*@Author: kpg
*@Since: 2017年6月9日14:56:18
*@param request
*@param response
*/
@RequestMapping("/export")
public void export(HttpServletRequest request,HttpServletResponse response) throws Exception{
request.setCharacterEncoding("UTF-8");
//获取request里的参数
String fileName = request.getParameter("title");//导出文件名称
if(ChineseUtill.isMessyCode(fileName)){
fileName = new String(fileName.getBytes("ISO8859-1"), "UTF-8");
}
String serviceName = request.getParameter("serviceName");//调用数据集合方法
if(ChineseUtill.isMessyCode(serviceName)){
serviceName = new String(serviceName.getBytes("ISO8859-1"), "UTF-8");
}
String params = request.getParameter("params");//数据集合方法所需参数
if(ChineseUtill.isMessyCode(params)){
params = new String(params.getBytes("ISO8859-1"), "UTF-8");
}
String tempName = request.getParameter("tempName");//模板名称
if(ChineseUtill.isMessyCode(tempName)){
tempName = new String(tempName.getBytes("ISO8859-1"), "UTF-8");
}
String attemperNo = request.getParameter("attemperNo");
if(attemperNo!=null && !attemperNo.equals("") && ChineseUtill.luanma(attemperNo)){
attemperNo = new String(attemperNo.getBytes("ISO8859-1"), "UTF-8");
}
//获取模板在项目中的路径
String templateFileNam