struts2 poi excel 导出
2019独角兽企业重金招聘Python工程师标准>>>
1、struts2配置文件
<!-- 下载专题库资源分类的excel模板 -->
<action name="getResClassifyDemo" class="ResClassifyAction"
method="getResClassifyDemo">
<result type="stream">
<param name="contentType">application/vnd.ms-excel</param>
<param name="inputName">excelStream</param>
<param name="contentDisposition">attachment;filename="demo.xls"</param>
<param name="bufferSize">4096</param>
</result>
</action>
2、Action 方法
/***
* 下载资源分类的excel模板 zhang.kt
*/
private InputStream excelStream;
public InputStream getExcelStream() {
return excelStream;
}
public void setExcelStream(InputStream excelStream) {
this.excelStream = excelStream;
}
public String getResClassifyDemo() {
/*
* 查询应用分类导航书,按照node_id从小到大排序
*/
List<ResClassifyEntity> ls = this.resClassifyService.showResClassifyByOrder();
try {
HSSFWorkbook wb = this.writeXLS(ls);
this.exportExcel(wb);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return SUCCESS;
}
3、action 方法中调用的公共方法
//excel导出
private void exportExcel(HSSFWorkbook workbook) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
workbook.write(baos);
baos.flush();
byte[] aa = baos.toByteArray();
excelStream = new ByteArrayInputStream(aa, 0, aa.length);
baos.close();
}
//excel数据写入的操作
public HSSFWorkbook writeXLS(List<ResClassifyEntity> list) {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("new sheet");
/** 创建样式 */
// 创建字体样式
HSSFFont font = wb.createFont();
font.setFontName("Verdana");
font.setBoldweight((short) 100);
font.setFontHeight((short) 300);
font.setColor(HSSFColor.BLUE.index);
// 创建单元格样式
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
style.setFillForegroundColor(HSSFColor.LIGHT_TURQUOISE.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
// 设置边框
style.setBottomBorderColor(HSSFColor.RED.index);
style.setBorderBottom(HSSFCellStyle.BORDER_THIN);
style.setBorderLeft(HSSFCellStyle.BORDER_THIN);
style.setBorderRight(HSSFCellStyle.BORDER_THIN);
style.setBorderTop(HSSFCellStyle.BORDER_THIN);
style.setFont(font);// 设置字体
String[] titles = { "节点ID", "父节点ID", "节点名称", "节点层数" };
int count = titles.length;
int size = list.size();
for (int i = 0; i < titles.length; i++) {
sheet.setColumnWidth(i, 4000);
}
/** 创建sheet行和列 */
for (int i = 0; i <= size; i++) {
sheet.createRow(i);
HSSFRow rowtitletemp = sheet.getRow(i);
for (int j = 0; j < count; j++) {
rowtitletemp.createCell(j);
}
}
/** 向sheet页中添加数据 */
for (int i = 0; i <= size; i++) {
if (i == 0) {
//添加表头标题
HSSFRow hsRow = sheet.getRow(0);
for (int j = 0; j < titles.length; j++) {
hsRow.getCell(j).setCellStyle(style);
hsRow.getCell(j).setCellValue(titles[j].toString());
}
} else {
//填充数据
ResClassifyEntity resEntity = (ResClassifyEntity) list.get(i-1);
HSSFRow hssfRow = sheet.getRow(i);
for (int j = 0; j < titles.length; j++) {
hssfRow.getCell(j).setCellStyle(style);
if (j == 0) {
hssfRow.getCell(j).setCellValue(resEntity.getNodeId());
} else if (j == 1) {
hssfRow.getCell(j).setCellValue(resEntity.getParentId());
} else if (j == 2) {
hssfRow.getCell(j).setCellValue(resEntity.getNodeName());
} else {
hssfRow.getCell(j).setCellValue(resEntity.getOther());
}
}
}
}
return wb;
}
前台jsp页面:
<SCRIPT type="text/javascript">
js代码
function downLoadDemo() {
window.location.href = "/system/classify/getResClassifyDemo.action";
}
</SCRIPT>
页面类容
<input type="button" id="" value="模板下载" class="input_btn_2"
οnclick="downLoadDemo()">
转载于:https://my.oschina.net/kt431128/blog/224743
struts2 poi excel 导出相关推荐
- poi excel 导出设置边框,自定义背景色,自定义字体
HSSFCellStyle style = changeStyleByCreditExport(workbook, "仿宋",12," 204, 204, 255&quo ...
- java poi excel导出
直接上代码 0. pom依赖 <dependency><groupId>cn.afterturn</groupId><artifactId>easypo ...
- Struts2 POI 导入导出Excel数据
页面端: <html> <head> <title>导入数据</title> </head> <body> <h1> ...
- SpringMVC + JDBC + POI Excel导出与导入 +下载 资源
最近用 POI 做了个 导入 导出,所以自己就搭了个 SpringMVC + JDBC + POI 的简单框架,把过程 记录一下,方便回忆 demo框架: SpringMVC + JDBC 数据库: ...
- Poi excel 导出 工具类参考
public void poiCreateExcel(HttpServletResponse response, Map<String, Object> map) {// 下载文件信息St ...
- java poi excel导出2003版改成2007版本的时候报错
03版本: HSSFWorkbook book =new HSSFWorkbook();---并无报错 07版本: XSSFWorkbook book =new XSSFWorkbook(); 报错内 ...
- struts2 poi导出excel实例代码下载
原文:struts2 poi导出excel实例代码下载 代码下载地址:http://www.zuidaima.com/share/1550463233526784.htm 页面展现成表格形式,添加ex ...
- Apache POI操作Excel导出JAVABEAN对象方法
2019独角兽企业重金招聘Python工程师标准>>> Apache POI操作Excel导出方法说明 Apache的POI组件是Java操作Microsoft Office办公套件 ...
- poi处理excel导出
一分钟说明 本文主要针对利用poi组件导出excel方式进行说明. 涉及知识点:- poi组件- spring4.0知识 poi组件 样式 CellStylecellStyle_topic_head ...
最新文章
- angular使用什么样的样式_Angular 样式使用注意事项
- 多线程c语言,如何用C语言实现多线程
- Just $h$-index HDU - 6278(主席树找区间大于等于k的个数)
- LeetCode 424. Longest Repeating Character Replacement
- 前端wxml取后台js变量值_这些鲜为人知的前端冷知识,你都GET了吗?
- Kubernetes 入门(4)集群配置
- 计算机专业 毕业论文 百度云,计算机专业毕业论文.pdf
- Win11任务栏颜色如何更改 Win11更改任务栏颜色教程
- 最小生成树计数(HYSBZ-1016)(加强版实现)
- 基于 HTML5 WebGL 的 3D 智慧隧道漫游巡检
- android studio:aar文件出现问号,导入不生效解决
- 计算机系统应用 莫军,ARINC653分区操作系统多核处理器任务调度设计
- uni ios视频黑屏、无声音或无法播放
- 飞秋怎么搜索指定ip好友_飞秋怎么加好友
- android 工具 拓扑图,GitHub - AndroidHelper/graph.editor: HTML5拓扑图编辑器
- JavaScript基本第一天总结
- Qt编写安防视频监控系统58-子模块2窗口信息
- SliceM与SliceL
- 链表中为何使用二级指针
- 将中文转换成拼音的组件类的pinyin
热门文章
- 中国人工智能学会通讯——AI时代的若干伦理问题及策略 1.3 构建算法治理的内外部约束机制...
- C# DataTable 和List之间相互转换的方法
- Codeforces Round #313 (Div. 1) C. Gerald and Giant Chess DP
- Nginx实战基础篇一 源码包编译安装部署web服务器
- SQL server 2005安装问题汇总
- CopyOnWriteArrayList原理及算法题存档
- python 清空文件夹_python读写文件
- 百度编辑器ueditor自适应手机端
- requirejs与echart的一些问题
- RocketMQ有哪些消息类型?springboot如何整合rocketMQ