POI导出excel

1.JAR包

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.9</version>
        </dependency>

2.jsp

<script type="text/javascript">
	function dc() {
		location.href = "/exceldc.do";
	}
</script>
        <input type="button" value="excel导出" οnclick="dc()">
	<table>
		<tr>
			<td>用户名</td>
			<td>密码</td>
			<td>地址</td>
		</tr>
		<c:forEach items="${users}" var="user">
			<tr>
				<td>${user.username}</td>
				<td>${user.pwd}</td>
				<td>${user.imageaddress}</td>
			</tr>
		</c:forEach>
	</table>

3.JAVA

package com.ss.test.mixtrue;

import java.io.IOException;
import java.io.OutputStream;
import java.util.List;

import javax.annotation.Resource;
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.apache.poi.ss.util.CellRangeAddress;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.skd.ems.register.RegService;
import com.skd.ems.register.Register;

@Controller
public class ExcelTest {
    @Resource
    private RegService regservice;
    
    @RequestMapping("/exceldc.do")
    public void exceldc(HttpServletResponse response,Register register){
        //创建excel文档对象
        HSSFWorkbook workbook = new HSSFWorkbook();
        //创建excel表单对象
        HSSFSheet hssfSheet= workbook.createSheet("用户表");
        //在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个  
        HSSFRow row1 = hssfSheet.createRow(0);
        //创建单元格
        HSSFCell cell=row1.createCell(0);
        //设置单元格内容
        cell.setCellValue("用户信息统计");
        //合并单元格cellRangeAddrss构造参数依次表示起始行,截止行,起始列,截止列
        hssfSheet.addMergedRegion(new CellRangeAddress(0,0,0,3));
        //创建第一行
        HSSFRow row2=hssfSheet.createRow(1);
        //设置单元格数据
        row2.createCell(0).setCellValue("用户名");
        row2.createCell(1).setCellValue("密码");
        row2.createCell(2).setCellValue("地址");
    
        //调用service查找数据
        List<Register> reg=regservice.find(register);
        for(int i =2;i<reg.size();i++){
            HSSFRow row=hssfSheet.createRow(i);
            row.createCell(0).setCellValue(reg.get(i).getUsername());
            row.createCell(1).setCellValue(reg.get(i).getPwd());
            row.createCell(2).setCellValue(reg.get(i).getImageaddress());
        }
        
         //输出Excel文件  
        try {
            OutputStream output = response.getOutputStream();
            response.reset();  
            response.setHeader("Content-disposition", "attachment; filename=details.xls");  
            response.setContentType("application/msexcel");          
            workbook.write(output);  
            output.close();  
        } catch (IOException e) {
            e.printStackTrace();
        }  
    }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值