jxls1.*系列(最新版本1.0.6)是基于jdk5的,项目为1.5,1.6的话可以用1.*系列
jxls2.*系列(最新版本2.3.0)是基于jdk7的,项目必须为1.7以上才可以用2.*系列
以下例子基于1.*系列,
(2.*系列excel模板的设计是使用excel批注实现,1.*系列使用标签实现)
0:pom中引入jar包
<dependency>
<groupId>net.sf.jxls</groupId>
<artifactId>jxls-core</artifactId>
<version>1.0.6</version>
</dependency>
<dependency>
<groupId>net.sf.jxls</groupId>
<artifactId>jxls-reader</artifactId>
<version>1.0.6</version>
</dependency>
1:定义view
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jxls.transformer.XLSTransformer;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.servlet.view.AbstractView;
public class JxlsExcelView extends AbstractView {
private static final String CONTENT_TYPE = "application/vnd.ms-excel";
private String templatePath;
private String exportFileName;
/**
* @param templatePath 模版相对于当前classpath路径
* @param exportFileName 导出文件名
*/
public JxlsExcelView(String templatePath, String exportFileName) {
this.templatePath = templatePath;
this.exportFileName = exportFileName;
setContentType(CONTENT_TYPE);
}
@Override
protected void renderMergedOutputModel(Map<String, Object> model, HttpServletRequest request,
HttpServletResponse response) throws Exception {
InputStream is = null;
OutputStream os = null;
os = response.getOutputStream();
response.setContentType(getContentType());
// 解决导出文件名中文乱码
String filename = new String(exportFileName.getBytes("gb2312"), "iso8859-1");
response.setHeader("content-disposition", "attachment;filename=" + filename + ".xls");
// 获取excel模板
is = JxlsExcelView.class.getClassLoader().getResourceAsStream(templatePath);
//转换成excel并输出
XLSTransformer transformer = new XLSTransformer();
Workbook workbook = transformer.transformXLS(is, model);
//将内容写入输出流并把缓存的内容全部发出去
workbook.write(os);
os.flush();
os.close();
is.close();
}
}
2:resources/jxls/template中设计模板online_user.xls
3:调用
// 导出
@RequestMapping
public ModelAndView export(ActionContext context, HttpServletResponse response) throws Exception {
// 1:准备数据
List<OnlineUser> userList = getUserList();
// 2:数据放置到jxls需要的map中
Map<String,Object> modal = new HashMap<String,Object>();
modal.put("users", userList);
modal.put("totalCount", userList.size());
// 3:导出文件
return new ModelAndView(new JxlsExcelView("jxls/template/online_user.xls","在线用户列表"), modal);
}
- 大小: 15.3 KB
分享到:
相关推荐
"Jxls+Spring MVC实现Excel导出"的主题聚焦于如何利用Jxls库和Spring MVC框架来实现这一功能。Jxls是一个强大的Java库,它扩展了Apache POI,使得在Excel模板上进行编程变得简单,而Spring MVC是Spring框架的一部分...
本文将详细介绍如何使用JXLS库结合Excel模板来实现这一功能。 JXLS(Java Excel Library)是一个强大的开源Java库,它允许开发者通过简单的XML模板来控制Excel文件的内容和格式。这个库简化了Java程序生成复杂Excel...
本项目专注于解决这一问题,通过使用`jxls2`库,能够实现复杂Excel模板的导出,包括单元格的合并,满足多种报表导出需求。现在我们将详细探讨这个项目的核心技术和应用场景。 首先,`jxls2`是一个强大的Java库,它...
下面将详细介绍jxls如何利用模板来实现Excel的导出。 1. **jxls概述**: jxls是一个Java库,它扩展了Apache POI,用于在Java应用中方便地处理Excel工作簿。它引入了一种基于模板的方法,使得动态创建和更新Excel...
4. **结果导出**:最后,`jxls`将填充后的模板转换为一个新的Excel文件,这个文件包含了所有来自数据模型的信息。 ### 三、jxls的关键特性 1. **动态数据处理**:支持条件逻辑、循环、合并单元格等复杂操作,使得...
综上所述,"IDEA+Springboot+gradle+Jxls导出Excel"的项目组合,利用现代开发工具和技术,实现了从数据获取、处理、展示到导出的完整流程。FreeMarker和EasyUI提供了用户友好的界面,Spring Boot和Gradle构建了健壮...
**正文** 在IT行业中,数据处理和展示是一个重要的任务,Excel作为广泛使用的表格工具,常被用于数据分析和报告生成。...在实际项目中,根据需求调整模板和数据结构,可以实现各种复杂的Excel报告生成。
Java开发案例-springboot-21-整合JXLS实现Excel导入导出-源代码+文档.rar Java开发案例-springboot-21-整合JXLS实现Excel导入导出-源代码+文档.rar Java开发案例-springboot-21-整合JXLS实现Excel导入导出-源代码+...
在本文中,我们将深入探讨如何使用Jett和Spring MVC框架来实现...如果你需要更多关于Jett和Spring MVC的详细信息,可以参考我的CSDN博客《Jxls+Spring MVC实现Excel导出》,在那里我会进一步探讨相关技术和最佳实践。
"jxls导出模板"是利用jxls库实现的一种高效、灵活的方式来处理和导出数据到Excel文件的方法。jxls是一个基于Java的库,它允许开发者使用Apache POI库来扩展XLS(X)模板,从而动态生成Excel文件。 jxls的核心概念是...
在本教程中,我们将深入探讨如何使用SpringBoot与JXLS库进行集成,以实现Excel文件的导入和导出功能。这是一个非常实用的功能,尤其在处理大量数据时,如批量用户注册、数据迁移或者数据分析等场景。让我们一起探索...
本文将详细介绍如何使用Jxls实现数据导入Excel的实例。 Jxls库的核心功能在于提供了一种声明式的方式来处理Excel模板,通过使用Apache POI库来操作Excel文件。它的主要优点是将数据和样式分离,让开发者可以专注于...
在本项目中,"springmvc+mybatis+mysql+log4jdbc+excel 实现sql日志输出和excel导出",开发者旨在构建一个基于SpringMVC、MyBatis、MySQL数据库,利用Log4jdbc记录SQL日志,并通过Jxls进行Excel数据导出的功能完善的...
本示例"(简单)JFinal实现Demo - 导出Excel 使用模板导出(POI + JXLS)"提供了一种高效的方法来生成复杂的Excel表格,无需通过编程逐个控制单元格样式。以下是对这个Demo的详细解释: 首先,JFinal是一个基于Java...
而当我们需要在Web应用程序中实现动态生成和导出Excel文件时,一种高效的方法是利用模板和特定的库,如jxls。本文将深入探讨如何使用jxls库,结合xls或xlsx模板,来实现Excel文件的导出和下载。 首先,了解jxls。...
《使用JXLS将数据库数据导出到Excel模板详解》 在现代企业信息化管理中,数据的导出和分析是一项重要的任务。JXLS(Java Excel Utilities)是一个强大的工具,它允许开发人员根据预设的Excel模板,方便地将数据库中...
jxls模板导出Excel教程 jxls是一种基于模板的报表生成工具,可以快速生成复杂的Excel报表。通过使用jxls,可以将报表生成过程简化,使其变得更加高效和灵活。 jxls的主要特点是使用模板来生成报表,用户可以根据...
"使用jxls2.X导出Excel文件"的主题涉及了如何利用Java来生成和操作Excel文档,尤其适用于需要动态生成内容的场景。在这个项目案例中,开发者使用了jxls库的最新版本(jxls2),它是一个强大的工具,能够帮助程序员将...
jxls是一个强大的库,它允许开发者使用模板的方式来导出Excel数据,极大地提高了工作效率。本篇将详细介绍jxls库及其在模板导出Excel中的应用。 首先,我们要了解什么是jxls。jxls是一个Java库,它扩展了Apache POI...