`
jhcknde
  • 浏览: 5224 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论
  • wbbjwg: 我想问一下,如果我导出的时候要让用户自行选择存放位置,要怎么实 ...
    JSP导出Excel文档

JSP导出Excel文档

阅读更多
今天晚上还真是倒霉,下午接了老师的电话要我搞定一个导出Excel文档的问题,结果搞了一个晚上,大约花了3个小时才搞定,真郁闷.于是我想到一个将这个方法完整的写出来,与大家分享.
        这是基于JSP的,用了一个第三方包jxl.jar,下面我们基于这个包来完成导出.
         首先写一个数据库连接类:
class dbcon{ 
private ResultSet rs;
private int numColumns; 
public dbcon(String sql){
  try{
  //驱动程序名
  String driverName="com.mysql.jdbc.Driver";
  //数据库用户名
  String userName="youraccount";
  //密码
  String userPasswd="youpassword";
  //数据库名
  String dbName="test";
  String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
  Class.forName("com.mysql.jdbc.Driver").newInstance();
  Connection connection=DriverManager.getConnection(url);
  Statement statement = connection.createStatement();
  rs = statement.executeQuery(sql);
  //获得数据结果集合
  ResultSetMetaData rmeta = rs.getMetaData();
  numColumns=rmeta.getColumnCount();
  }
  catch(Exception e){
   System.out.println(e);
  }
}
public void setRs(ResultSet rs){
  this.rs=rs;
}
public ResultSet getRs(){
  return rs;
}
public void setNumColumns(int numColumns){
  this.numColumns=numColumns;
}
public int getNumColumns(){
  return numColumns;
}
}
 
         上面这个类完成取出数据的工作,接着我们要将数据写入到Excel中去:

public class writeExcel{

public writeExcel(OutputStream os,String sql) throws Exception {
  dbcon db=new dbcon(sql); 
  WritableWorkbook wwb = Workbook.createWorkbook(os);
  WritableSheet ws = wwb.createSheet("TestSheet1", 0);
  int j=0;
  Label labelC;
 
  while(db.getRs().next()){  
   for(int i=0;i<=db.getNumColumns()-1;i++){
    labelC = new Label(i, j, db.getRs().getString(i+1));
    ws.addCell(labelC);
   }
   j++;
  }
  wwb.write();
  wwb.close();
}
}  
         再写个mian方法测试一下:
public static void main(String[] args)throws Exception{
  File f=new File("kk.xls");
  f.createNewFile();
  new writeExcel(new FileOutputStream(f),"select * from test where name like '%z%'");
}

         到此为止都没有问题,大家不知道有没有注意到我在main方法里测试的哪个sql语句是一个模糊查询的sql语句,下面的问题与此有关.由于我帮老师做的这个系统是JSP做的,我的导出页面在一个jsp文件里,而在前一个查询页面里动态生成一个sql语句然后传给负责导出的页面,这就存在一个问题,要进行 url参数传递,但是当涉及到模糊查询时,程序就出错,后来经过仔细调试,才发现是"%"捣的鬼,"%"无法传递,到网上查了半天,终于有人提示用字符替代的方法,我试了试,终于成功了,真是累死了.
         方法如下,在生成查询的页面,假定sql语句为String exportsql;用replaceall方法exportsql=exportsql.replaceall("%","999999999");在到处页面取出数据后再替换回来就行了.
         还要说明的就是这里作为替代的字符也不是什么都可以的,一些特殊字符如&,^,好象也不行.


分享到:
评论
1 楼 wbbjwg 2009-02-22  
我想问一下,如果我导出的时候要让用户自行选择存放位置,要怎么实现呢?
现在急于解决这个问题,请大虾给与指点

相关推荐

    jsp导入导出excel文件

    **二、导出Excel到JSP** 1. **创建Excel文件**:在服务器端,使用Apache POI创建一个新的工作簿对象,然后添加工作表。根据需要设置标题行和其他格式。 2. **填充数据**:从数据库或其他数据源获取数据,使用POI ...

    jsp页面导出excel

    在JSP页面导出Excel时,我们会用到POI库来创建和操作Excel工作簿、工作表和单元格。首先,确保项目中已经引入了Apache POI的相关依赖。 2. **服务器端代码** 在后端Java代码中,你需要创建一个Servlet或者...

    jsp导出excel一般问题及汇总

    总结,JSP导出Excel涉及到数据处理、文件流操作、Excel格式设置等多个方面,理解并掌握这些知识点,能有效解决实际项目中的问题,提升用户体验。在实践过程中,不断学习和优化代码,可以使得导出功能更加高效、稳定...

    jsp导出Excel;简单实用!导出Excel;导出Word

    总之,JSP导出Excel和Word是常见的功能需求,通过Apache POI库可以轻松实现。正确设置响应头和使用流处理可以确保文件能被正确下载,同时根据实际需求调整数据处理和样式设置,能够创建符合业务需求的导出文件。

    JSP导出excel和pdf格式

    总结,JSP导出Excel和PDF是Web应用中常见的功能,通过合理选择和使用相应的库,结合HTTP响应机制,我们可以轻松实现在服务器端生成并提供下载这些文件。在实际开发中,要兼顾性能、安全和用户体验,确保功能的稳定性...

    JSP导出Excel文件的方法

    在JSP中导出Excel文件是一项常见的...总之,JSP导出Excel文件涉及的主要技术点有:JExcelAPI的使用、HTTP响应头的设置、以及样式和数据的组织。通过这些技术,你可以方便地在Web应用中为用户提供Excel文件的下载服务。

    java及jsp下导出excel表格

    #### 结合JSP导出Excel 在Web应用中,通常会结合JSP页面来动态生成Excel文件并提供下载。这涉及到设置正确的HTTP响应头,以便浏览器识别文件类型和进行下载。例如,在JSP中可以这样设置: ```jsp *,javax.servlet....

    JSP页面导出EXCEL简单方法

    要将JSP页面的HTML表格导出为Excel,我们通常会利用HTTP响应头来设置内容类型为`application/vnd.ms-excel`,这样浏览器就会将响应的数据解析为Excel文件。以下是简单的步骤: 1. **创建HTML表格**:在JSP页面(如...

    导出jsp页面为excel文档

    ### 如何在JSP中将页面内容导出为Excel文档 #### 标题解析:导出JSP页面为Excel文档 本标题明确指出本文的主要内容是介绍如何将JSP页面的内容转换并导出为Excel文档。JSP(JavaServer Pages)是一种基于Java的技术...

    JSP中导入导出Excel文件.

    在IT领域,特别是Web开发中,JSP(JavaServer Pages)...在JSP中导入导出Excel文件,Apache POI是一个强大且灵活的工具。掌握其基本用法后,可以高效地处理各种Excel文件相关的任务,从而提升Web应用的数据处理能力。

    导出excel的jsp开发

    查询数据跳转到当前的jsp,通过获取后台的接口数据导出excel文件,最后再自动跳转到上一个的页面。

    如何在jsp导出到Excel文件

    ### 如何在JSP导出到Excel文件:深入解析与实践 #### 一、通过设置Content-Type导出至Excel 在JSP环境下实现文件导出至Excel的第一种方法较为简单,主要通过修改JSP页面的`Content-Type`属性来完成。`Content-Type...

    JSP导出Excel.docx

    标题中的“JSP导出Excel.docx”表明我们要讨论的主题是使用Java服务器页面(JSP)来生成Excel文件。描述部分未提供具体内容,但我们可以基于标题和标签来深入讲解。 在Java开发中,导出Excel文件是常见的需求,通常...

    Jsp中Excel文件的导入和导出方法集合

    在Java Web开发中,JSP(JavaServer Pages)经常用于创建动态网页,有时我们需要处理Excel文件,例如导入数据到数据库或者导出数据为用户下载。本篇将详细讲解JSP中Excel文件的导入和导出方法,以及相关知识点。 1....

    jsp导出excel并支持分sheet导出的方法.docx

    ### JSP导出Excel并支持分Sheet导出的方法详解 #### 概述 在Web开发领域,特别是使用Java Server Pages (JSP)进行后端处理的应用程序中,经常需要将数据库中的数据导出到Excel文件中供用户下载或进一步处理。这种...

    jsp实现excel上传至数据库,以及 从数据库导出excel

    本项目以"jsp实现excel上传至数据库,以及从数据库导出excel"为主题,提供了一种实用的方法,适合初学者学习。下面将详细解释这个过程涉及的关键技术点。 1. JSP(JavaServer Pages):JSP是一种动态网页技术,允许...

    JSP Struts2 分页 导出Excel

    **JSP Struts2 分页 导出Excel** 在Web开发中,经常需要处理大量数据,这时分页显示和导出功能就显得尤为重要。JSP(JavaServer Pages)和Struts2作为Java Web开发中的常见技术,可以帮助我们构建动态、交互的网页...

    基于SSM的POI导入导出Excel实战

    总结一下,本教程的目的是教你如何在SSM框架下利用Apache POI实现Excel的导入导出功能,通过这个过程,你可以学习到如何结合SpringMVC的Controller、Service层以及POI库来处理文件操作,同时提升对SSM框架和Excel...

    JSP SERVLET 导出数据库内容到EXCEL

    本篇主要探讨如何利用JSP和Servlet将数据库中的数据导出到Excel文件,这对于数据分析、报告生成等场景非常实用。 首先,我们需要了解JSP和Servlet的基本概念。JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入...

    jsp页面数据通过excel导出

    "jsp页面数据通过excel导出"这个主题就是关于如何在Java Web应用程序中利用JSP(JavaServer Pages)技术和Apache POI库将动态生成的数据导出为Excel文件。Apache POI是一个强大的API,它允许开发者读写Microsoft ...

Global site tag (gtag.js) - Google Analytics