springmvc + excel代

springmvc + excel代

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

1.xml简介

	<!-- excel use start -->
	<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
		<property name="order" value="10"/>
	</bean>

	<bean id="viewExcel111" class="net.spring.controller.ViewExcel" />
	<!-- excel use end -->

2.controller

	@RequestMapping("excelAction")
	public String excelAction(Map<String, Object> map){
		
		// 传给ViewExcel的值
		map.put("p1", "hello");
		map.put("p2", "world");
		
		return "viewExcel111"; 
	}

3.ViewExcel

package net.spring.controller;

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 ViewExcel extends AbstractExcelView {

	@Override
	protected void buildExcelDocument(Map<String, Object> map,
			HSSFWorkbook workbook, HttpServletRequest arg2,
			HttpServletResponse response) throws Exception {

		String p1 = (String) map.get("p1");
		String p2 = (String) map.get("p2");

		// 设值文件名称:显示对话框提示用户下载或打开
		response.setHeader("Content-Disposition", "attachment;filename="
				+ new String("用户列表".getBytes(), "ISO-8859-1"));
		
		// sheet的名称
		HSSFSheet sheet = workbook.createSheet("testSheet");
		
		HSSFRow row = null;
		HSSFCell cell = null;

		// 行号
		int rowIndex = 0;
		// 列号
		int cellIndex = 0;

		// 通过sheet对象添加一行
		row = sheet.createRow(rowIndex++);
		// 通过row对象添加一列
		cell = row.createCell(cellIndex++);
		// 设值列的内容
		cell.setCellValue("第一列的内容");
		// 添加一列
		cell = row.createCell(cellIndex++);
		// 设值列的内容
		cell.setCellValue(p1);

		// 列号清零
		cellIndex = 0;
		// 添加一行
		row = sheet.createRow(rowIndex++);
		// 添加一列
		cell = row.createCell(cellIndex++);
		// 设值列的内容
		cell.setCellValue("第二列的内容");
		// 添加一列
		cell = row.createCell(cellIndex++);
		// 设值列的内容
		cell.setCellValue(p2);
	}

}

效果图:

springmvc + excel代

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116699.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • matlab输出语句fprintf例子_matlab中compose函数

    matlab输出语句fprintf例子_matlab中compose函数golang需要什么基础?_后端开发golang需要的基础是:首先初学Go语言要弄懂基础语法和概念;然后掌握文件操作、网络编程、锁、协程、对象序列化和反序列化,以及各种数据格式的封装等;最后接触数据库等,就可以模块化开发。matlab中fprintf函数的用法详解:fprintf函数可以将数据按指定格式写入到文本文件中。其调用格式为:数据的格式化输出:fprintf(fid,format,v…

    2022年8月31日
    2
  • 计算机负数补码_负数用补码表示如何理解

    计算机负数补码_负数用补码表示如何理解在计算机系统中,数值一律用补码来表示(存储)。主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。2、补码与原码的转换过程几乎是相同的。数值的补码表示也分两种情况:(1)正数的补码:与原码相同。例如,+9的补码是00001001。(2)负数的补码:符号位为1

    2025年6月13日
    3
  • intellij IDEA配置tomcat

    intellij IDEA配置tomcatintellijIDEA配置tomcat如果网上流传的方法(即方法2)不能配置成功,点击加号什么都没有的话,请看方法一配置方法。解决问题:intlellijIDEA配置tomcat点击加号没东西。方法一:手动添加tomcat插件然后再导入tomcat路径。步骤1:进入项目之前或者closeproject可以看到如下界面,选择Plugins步骤2.在搜索框输入tomca…

    2022年6月6日
    74
  • C#设计模式之十三模板方法模式(Template Method Pattern)【行为型】

    C#设计模式之十三模板方法模式(Template Method Pattern)【行为型】

    2022年3月13日
    57
  • Nhibernate_juan benet

    Nhibernate_juan benet什么是NHibernate?NHibernate是一个基于.Net,用于关系数据库的对象持久化类库.它是著名的Hibernate的.Net版本.NHibernate用于把你的.Net对象持久化到底层的关系数据库中.你完全不用自己编写Sql语句去操作这些对象,NH会代替你做.你的代码里面只需要关心这些对象,NH生成sql语句并能为你取到正确的东西.开发过程HNibernate将会有一些工具帮助你,如

    2025年7月3日
    2
  • C++ Primer 学习笔记_87_用于大型程序的工具 –异常处理

    C++ Primer 学习笔记_87_用于大型程序的工具 –异常处理

    2021年12月6日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号