采用jxl实现数据库结果集导出到excel文件
2006-04-15 16:32
691 查看
import jxl.WorkbookSettings; import jxl.Workbook; import jxl.write.WritableWorkbook; import jxl.write.WritableSheet; import jxl.write.Label; import jxl.write.WriteException; import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.ResultSetExtractor; import org.springframework.jdbc.support.JdbcUtils; import org.springframework.dao.DataAccessException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.ArrayUtils; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.ServletException; import javax.servlet.ServletConfig; import java.util.Locale; import java.util.HashMap; import java.util.Map; import java.io.IOException; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.ResultSetMetaData; public class ExcelGenerator extends HttpServlet{ //设定每个Sheet的行数 private int pagesize=5000; private WorkbookSettings workbookSettings=new WorkbookSettings(); //springframework 的 WebApplicationContext public static WebApplicationContext wac=null; //springframework 的 jdbc 操作模版类 public static JdbcTemplate jdbcTemplate=null; protected final Log logger=LogFactory.getLog(getClass()); /** *//** * 初始化 * * @param config * @throws ServletException */ public void init(ServletConfig config) throws ServletException{ super.init(config); try{ if(null!=getInitParameter("pagesize")){ pagesize=Integer.parseInt(getInitParameter("pagesize")); } workbookSettings.setLocale(Locale.getDefault()); wac=WebApplicationContextUtils.getRequiredWebApplicationContext(getServletContext()); jdbcTemplate=(JdbcTemplate)wac.getBean("jdbcTemplate"); } catch(Exception e){ logger.error("ExcelGenerator init() error !"+e, e.getCause()); e.printStackTrace(); } } public String getServletInfo(){ return "Servlet used to generate excel output"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ generateExcel(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ generateExcel(request, response); } /** *//** * in: * field1#Title&field2#Title&field3#Title * out: * { * field1:Title, * field2:Title * field3:Title * } * * @param columnTitle */ public static HashMap generateColumnTitleMap(String columnTitle){ HashMap map=new HashMap(); String[] level1=StringUtils.split(columnTitle, "&"); if(ArrayUtils.isEmpty(level1)) return null; for(int i=0;ipagesize){ counter=0; writableSheet=writableWorkbook.createSheet("第"+(++page)+"页", 0); } } } catch(WriteException e){ e.printStackTrace(); } return null; } } ); writableWorkbook.write(); try{ writableWorkbook.close(); } catch(WriteException e){ logger.error("writableWorkbook.close() error !"+e, e.getCause()); e.printStackTrace(); } } } web.xml ExcelGeneratorservlet-name> com.fsti.xmnms.web.servlet.ExcelGeneratorservlet-class>
pagesizeparam-name>
5000param-value> init-param> 3load-on-startup> servlet> ExcelGeneratorservlet-name> *.xlsurl-pattern> servlet-mapping> 测试页面:
pagesizeparam-name>
5000param-value> init-param> 3load-on-startup> servlet> ExcelGeneratorservlet-name> *.xlsurl-pattern> servlet-mapping> 测试页面:
相关文章推荐
- 采用jxl实现数据库结果集导出到excel文件
- Java导出页面数据或数据库数据至Excel文件并下载,采用JXL技术,小demo(servlet实现)
- 采用jxl实现数据库结果集导出到excel文件
- Java Web获取数据库数据,利用jxl实现数据导出成Excel文件
- 实现各种文件的下载方法:用于 WEB上的报表导出(jxl 实现Excel报表下载),核心思想就是将文件的输出流传给HttpResponseOutputStream 里就成了。
- 将(Oracle)数据库表导出到Excel,并生成文件(C#实现)
- 将数据库表导出到Excel,并生成文件(C#实现)
- 在Yii框架中使用PHPExcel扩展从数据库导出excel文件功能的实现
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- [转]asp实现数据库导出excel文件
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- 将数据库表导出到Excel,并生成文件(C#实现)
- OAF_文件系列9_实现OAF解析Excel并读取至数据库JXL
- ApachePOI实现将数据库表中的信息导出到Excel文件中
- 使用jxl实现导出Excel,解决路径和删除文件的问题
- JLX实现将数据库表中的信息导出到Excel文件中
- jxl导出excel出现“文件错误,可能某些数据格式已丢失"
- Jxl导出Excel实现
- 使用JXL组件操作Excel和导出文件
- EasyUI入门9 EasyUI+NPOI+QrCode实现带二维码复杂格式excel文件导出