- 浏览: 7861103 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
spring里支持从数据动态生成PDF/XSL,PDF的很多例子了,而Spring可以结合Apache的POI包,来生成EXCEL的。
首先到http://jakarta.apache.org/poi/index.html去下载poi包,将其放到工程目录的WEB-INF\LIB下。
POI的具体操作例子可以到http://jakarta.apache.org/poi/hssf/quick-guide.html这里去看。
其实讲到底是利用了spring的ResourceBundleViewResolver的。
下面列一个一本书上的例子,以供备考
song.java
package springxls;
public class Song {
private String singer;
private String title;
public Song(String singer, String title) {
this.singer = singer;
this.title = title;
}
public String getSinger() {
return singer;
}
public String getTitle() {
return title;
}
}
控制器SongPageController .java
public class SongPageController extends AbstractController {
private String successView;
public void setSuccessView(String successView) {
this.successView = successView;
}
protected ModelAndView handleRequestInternal(HttpServletRequest request,
HttpServletResponse response)
throws Exception {
Map map = new HashMap();
List songList = new ArrayList();
songList.add(new Song("James Blunt", "Goodbye My Lover"));
songList.add(new Song("MC HotDog", "我行我素"));
map.put("songlist", songList);
return new ModelAndView(successView, map);
}
}
生成Xsl文件
mport java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.springframework.web.servlet.view.document.AbstractExcelView;
public class SongXlsPage extends AbstractExcelView {
public void buildExcelDocument(
Map model, HSSFWorkbook workbook,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
int sheetRowNum = 0;
//取得模型数据
List songs = (List)model.get("songlist");
Iterator<Song> iter = songs.iterator();
//创建工作表和标题
HSSFSheet sheet = workbook.createSheet("MySong");
HSSFRow titleRow = sheet.createRow((short) sheetRowNum++);
HSSFCell titleCell = titleRow.createCell((short) 0);
titleCell.setCellValue("My Songs");
//创建一个空行
sheet.createRow(sheetRowNum++);
//创建数据表头
String[] titles = {"Title", "Singer"};
HSSFRow dataTitleRow = sheet.createRow((short) sheetRowNum++);
for (int i = 0; i < titles.length; i++) {
HSSFCell cell = dataTitleRow.createCell((short)i);
cell.setCellValue(titles[i]);
}
//数据模型转换:创建表格数据
for (int i = sheetRowNum; i < songs.size() + sheetRowNum; i++) {
if (iter.hasNext()) {
Song song = iter.next();
HSSFRow dataRow = sheet.createRow((short)(i));
HSSFCell cell1 = dataRow.createCell((short)0);
//中文显示指定编码
cell1.setEncoding(HSSFCell.ENCODING_UTF_16);
HSSFCell cell2 = dataRow.createCell((short)1);
cell1.setCellValue(song.getTitle());
cell2.setCellValue(song.getSinger());
}
}
}
}
web.xml
<servlet>
<servlet-name>frontcontroller</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>frontcontroller</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
froncontroller-servlet.xml<beans>
<bean id="viewResolver"
class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
<property name="basename">
<value>views</value>
</property>
</bean>
<bean id="defaultHandlerMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<bean name="/viewsong-xls.do"
class="springxls.SongPageController">
<property name="successView" value="xlsSong"/>
</bean>
</beans>
发表评论
-
git学习小结
2017-01-23 20:14 565http://www.liaoxuefeng.com/wiki ... -
国内IT技术大会小结
2012-06-15 12:47 3395搞IT的就要多交流,这个应该成为大家的共同认识,比如国内目前有 ... -
国内IT技术大会小结束
2012-06-15 12:44 0搞IT的就要多交流,这个应该成为大家的共同认识,比如国内目前有 ... -
国内IT技术大会小结束
2012-06-15 12:42 0搞IT的就要多交流,这个应该成为大家的共同认识,比如国内目前有 ... -
神奇的“触觉振动”:谈W3C的震动API
2012-02-17 12:28 2086说起“触觉反馈”,大家可能从字面上并不能理解它是如何工作的。触 ... -
Chrome赶超IE:谷歌为何再度联手火狐
2011-12-27 20:16 2393http://tech.it168.com/a2011/122 ... -
(转10款难看但好用的SEO工具
2011-09-07 06:53 1324人不可貌相,SEO工具也不例外。 SEO专业网站SEOmoz ... -
一个很好的开源CRM项目
2005-01-15 19:56 1596http://www.sugarcrm.com,还有简体中文包 ... -
PHP中得到指定的时间段
2005-01-15 19:59 1912最近在项目中,遇到个比较特殊的要求,比如,MYSQL中,比如今 ... -
给大家推荐一个SQL好的站点
2005-01-15 20:20 1086,给大家推荐一个SQL好的站点 http://sqlteam. ... -
记得打补丁
2005-04-14 19:33 1013之前遇到个很怪的问题: 买了个新硬盘,160G,重新装了VS. ... -
express beta 2版本出来了
2005-04-18 11:30 1011在没下到VS。NET 2005之前,也可以用轻量级的EXPRE ... -
SQL SEVER 2005 CTP APRIL出来了
2005-04-20 20:02 1042http://lab.msdn.microsoft.com/e ... -
ms reporting service sp2 出来了
2005-04-24 08:27 1169SQL Server 2000 Reporting Servi ... -
php5 读书心得(1)
2005-04-25 19:48 1122由于工作中要用到PHP,最近下了本《PHP5 POWER PR ... -
PHP5 心得(2)
2005-04-28 19:41 1151在OOP中,构造函数和析构函数是很重要的,在PHP4中,可 ... -
vs.net 2005 beta 2安装问题
2005-04-28 22:50 1166我之前已经卸载了BETA 1了,但可惜安装后,在新建工程后,还 ... -
PHP5心得3
2005-04-29 20:47 1100今天讲的是parent::和self::两个新的关键字。se ... -
PHP5心得4
2005-05-01 17:11 11241 instanceof操作 该操作中,判断某个类是 ... -
vs 2005中的 Visualizer debugger
2005-05-05 21:01 1110在vs.net 2005 中,增加了可视化的调试器,甚至可以自 ...
相关推荐
poi 生成excel模板,下拉选项,批注。现在有模板中插入下拉信息
poi作为导出excel常用的工具,方便快捷。对于excel指定下拉列表的列,如何生成呢?本文提供如何生成下拉列表的excel列
SpringMVC POI Excel 生成导出
springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式Excel模板,完整项目,导出即用。springboot+poi导出指定格式...
SpringBoot整合poi实现Excel文件的导入和导出,其中单独分装出一个ExcelFormatUtil工具类来实现对单元格数据格式进行判断。
springboot + poi导出指定格式Excel模板。 springboot+poi导出指定格式Excel模板,完整项目,导出即用。 poi导出Excel
lombok、log4j2、validation、hutool、commons-lang3、fastjson、poi、knife4j依赖swagger、mysql driver、druid、mybatis及代码生成相关依赖、spring-aop(aspectjweaver)、pagehelper、minio、commons 实现功能...
HTML页面并不总是向用户显示数据输出的最好方式,Spring支持从数据动态生成PDF或Excel文件,并使这一过程变得简单。文档本身就是视图,从服务器以流的方式加上内容类型返回文档,客户端PC只要运行电子表格软件或PDF...
SpringBootMybatis+poi+Thymeleaf实现excel文件数据导入到数据库以及从数据库将数据导出成excel
Spring-Batch-Excel Spring Batch扩展包含基于Excel的ItemReader实现。 它支持读取XLS和XLSX文件,后者还具有(实验性)流支持。 PoiItemReader具有最多的功能,但同时也是最耗费内存的,并且可能导致大型XLS(X)...
由于项目需要对大量Excel数据进行输入输出处理,在使用JXL,POI后发现很容易出现OOM,最后在网上找到阿里的开源项目EasyExcel能很快速的读取写入超大Excel文件。经过大量的调试优化,现通过JAVA生成104万行20列的...
Spring-Excel 到对象绑定Spring Excel 上传文件到对象集合绑定这是所有想要实现解决方案的程序员的事情上传文件(此处为 Excel) 使用 Apache POI 解析文件将 excel 行绑定到 POJO 的集合(重新)在动态绑定中使用 ...
使用SpringBoot+POI导出excel数据。 使用SpringBoot导出excel模板文件,防止用户导入错误。 先看是否需要在下载,功能演示都放在这篇文章了:https://truedei.blog.csdn.net/article/details/105325018
程序使用Struts2(SSH即Struts2+Hibernate+Spring)+POI+MySQL实现Excel动态数据导入和导出,程序源码文件附带运行说明
1.SpringSecurity使用token写入过期时间进行有效期管理(SpringSecurity结合Redis进行token有效期管理请移步我的另一个项目——小区智能管理系统) 2.可以通过角色权限或者指定人员授予菜单权限来实现动态菜单 3引用...
Excel解析、生成: POI 技术 远程调用: 基于Restful风格CXF 编程 第三方短信平台、邮件平台 使用 Redis缓存使用 、ActiveMQ消息队列 搜索服务器 ElasticSearch安装配送使用 , Spring Data 操作Elastic...
19.SpringBoot之使用POI开发Excel模板 20.SpringBoot之修改ico和Banner 21.SpringBoot之发送邮件与短信 22.SpringBoot之集成Activiti工作流 23.SpringBoot之集成sharding-jdbc分库分表 24.SpringBoot之集成Swagger #...
- Excel工具包:[apache-poi 4.1.0](https://poi.apache.org/); - 验证码工具包:[hutool 4.6.8](https://hutool.cn/docs/#/); ## 启动 1. 从git克隆项目导入到编译器,maven-update project下载相关依赖包 ``` ...
5.使用 poi导出 excel文件,供决策人员参考. 6.采用二进制运算实现权限控制,利用interceptor实现粗粒度控制以及重写struts2 标签实现细粒度权限控制.采用二位运算能够使得权限运算更加快捷,而且极大 降低 session...
技术领域Java 13 Spring Boot版本2.4.2 LombokH2数据库昂首阔步2 Spring安全Apache POI OOXML设置转到http = // localhost:8080 / h2-console查看数据库文献资料转到查看API文档终点GET-将所有图书导出到Excel“ ...