SpringMVC+Hibernate +MySql+ EasyUI实现POI导出Excel(二)

注:使用的是MyEclipse 10.0 javaee 6.0 tomcat 6.0 导出指定列名。使用VO接受参数。

SpringMVC+Hibernate +MySql+ EasyUI实现POI导出Excel(二)  和 批量删除数据 小功能的实现

1.datagrid新加的导出按钮代码

               /*导出excel 按钮*/
               toolbar:[{
               id:'btnsave',
                    text:'导出',
                    iconCls:'icon-save',
                    handler:function(){
                        var url = '${ctx}/export?method=sheetsExport';
                        window.location.href=url;
                    }
               }]

2.批量删除的js代码和html代码

    /****批量删除******/
    $(function(){
    $("#deletes").bind("click",function(){
        var selrow = $("#dg").datagrid("getSelections");
        if(selrow.length==0){
        alert("至少选择一条数据");
        return false;
        }
        var ids=[];
        for(var i = 0; i < selrow.length; i++){
            var id = selrow[i].id;
            ids.push(id);
        }
        if(confirm("您确定批量删除")){
            $.getJSON("${ctx}/user/delall",{"array[]":ids},
            function(data){
                alert(data.msg);
                if(true == data.success){
                    $("#dg").datagrid("reload");
                }
            })
        }
    })
    })

html
  <a href="javascript:void(0);" id="deletes" class="blank_btn" >批量删除</a>

3.导出Controller代码

package com.xs.demo.controller;

import java.io.OutputStream;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.poi.ss.formula.functions.T;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.ServletRequestUtils;
import org.springframework.web.bind.annotation.RequestMapping;

import com.xs.demo.dao.UserDao;
import com.xs.demo.entity.Userinfo;
import com.xs.demo.service.ExportExcel;
import com.xs.demo.service.UserService;
import com.xs.demo.util.ExcelUtils;
import com.xs.demo.util.JsGridReportBase;
import com.xs.demo.util.StringUtil;
import com.xs.demo.util.TableData;
/**
 * 
 * 类名称:ExportController 
 * @author 宗潇帅
 * 2014-11-18
 */
@Controller
@RequestMapping(value="/export")
public class ExportController {
    UserService userService;
    UserDao userDao;
    ExportExcel<T>  excelService = new ExportExcel<T>();
    /**
     * 
     * @param request
     * @param response
     * @throws Exception
     */
    @SuppressWarnings({ "rawtypes", "unchecked" })
    @RequestMapping(params="method=sheetsExport")
    public void exportSheets(HttpServletRequest request,
            HttpServletResponse response)throws Exception {
        Userinfo userinfo = new Userinfo();
        List list = userService.lists(userinfo);//查询所有的数据

        String haders[] = new String []{"序号","名称","年龄","生日","地址","学号"};

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        String filename = format.format(new Date().getTime())+".xls";
        response.setContentType("application/ms-excel;charset=UTF-8");
        response.setHeader("Content-Disposition", "attachment;filename="
                .concat(String.valueOf(URLEncoder.encode(filename, "UTF-8"))));
        OutputStream out = response.getOutputStream();
        try {
            excelService.exportExcel(haders,list,out);
            System.out.println("success");
        } catch (Exception e) {
            System.out.println("error");
        }finally{
            out.close();
        }
    }
    public UserService getUserService() {
        return userService;
    }
    public void setUserService(UserService userService) {
        this.userService = userService;
    }
    public UserDao getUserDao() {
        return userDao;
    }
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }
    public ExportExcel<T> getExcelService() {
        return excelService;
    }
    public void setExcelService(ExportExcel<T> excelService) {
        this.excelService = excelService;
    }


    
}

3.http://my.oschina.net/xshuai/blog/304321  工具类代码在这里。

4.userdao代码

    public List<Userinfo> lists(Userinfo userinfo) {
        return super.list(Userinfo.class);
    }

http://yun.baidu.com/pcloud/album/info?query_uk=3724757956&album_id=3094796070610213829源代码和jar包。讲本页面所需要的代码复制相应的位置即可。

个人微博 http://weibo.com/zxshuai319

个人博客 http://my.oschina.net/xshuai/blog

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java沉淀

java实现Excel表格导出

50730
来自专栏LIN_ZONE

javaweb中的文件上传的一般写法(初次接触时写)

注: 1. 上面的java部分的代码可以直接使用,只需要将上传的图片路径及收集数据并将数据写入到数据库即可 2. 上面上传文件使用到了字节流,其实还可以使用...

15620
来自专栏Ryan Miao

Jackson序列化LocalDate与Springboot集成

Java8的date API一经推出便广受好评,今日也准备用一用,然后就用出问题了。基本用法见https://www.cnblogs.com/woshimrf/...

20110
来自专栏Android中高级开发

Android开发之漫漫长途 XI——从I到X的小结

该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列。该系列引用了《Android开发艺术探索...

13720
来自专栏Ryan Miao

MongoDB - basic

mongoDB basic from:http://www.tutorialspoint.com/mongodb prject:https://github....

33860
来自专栏Kubernetes

kube-proxy源码分析

##kube-proxy介绍 请参考我的另一篇博文:kube-proxy工作原理 ##源码目录结构分析 cmd/kube-proxy //负责kub...

85350
来自专栏西安-晁州

ssh登录实现

工程目录 ? 配置文件详解 Spring的applicationContext.xml文件 <span ><?xml version="1.0" encodin...

32000
来自专栏个人分享

Spark代码调优(一)

import org.apache.spark.sql.{DataFrame, Row, SQLContext}

30510
来自专栏C#

免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)

   前面介绍了六种.NET组件,其中有一种组件是写文件的压缩和解压,现在介绍另一种文件的解压缩组件SharpZipLib。在这个组件介绍系列中,只为简单的介绍...

48960
来自专栏Lambda

编程规范

领域层–编码规范 2018年4月4日14:10:38 Controller层编写规范 controller层只是负责从service层获得数据,对外暴露API接...

38160

扫码关注云+社区

领取腾讯云代金券