zoukankan      html  css  js  c++  java
  • 关于史上最简单的导出(导出excal)

    话不多说 直接看代码  我写的这个导出很多都是封装好的 

    至于我的封装,我就不发出来了,因为我的封装直接复制网上的 很简单大家也可以直接

    搜索一个封装起来直接使用。

    今天想给你们看的并不是我的代码写的多好,而是想告诉你们导出可以这样实现。

    我不是一个优秀的博主,但我每一行代码都是认真的,只要你需要我或者有问题 随时可关注我,我随时会给你们在线解决一些小问题。

    @RequestMapping("userBatchPrintOUT")
    public void getInputStream(HttpSession session, HttpServletResponse response,
    HttpServletRequest request,String[] uids) throws IOException {
    User userlogin = (User)session.getAttribute("User");
    Level levelloign = (Level)session.getAttribute("Level");
    Manager loginManager = (Manager) session.getAttribute("Manager");
    List<User> list = new ArrayList<>();
    for (int i = 0; i < uids.length; i++) {
    User ser = userService.getUserById(Integer.parseInt(uids[i]));
    if (ser.getLevel().getBranch().indexOf(levelloign.getBranch()) >= 0) {
    goverlogService.addGover(loginManager.getId().intValue(),
    loginManager.getGroup().getId().intValue(), ser.getId().intValue(), 0,
    "用户" + loginManager.getManagerext().getName() + "导出其他用户信息"
    + ser.getUserExt().getXm() + "!",
    1, loginManager.getManagerext().getName() , ser.getUserExt().getXm());
    list.add(ser);
    } else {

    goverlogService.addGover(loginManager.getId().intValue(),
    loginManager.getGroup().getId().intValue(), ser.getId().intValue(), 0,
    "用户" + loginManager.getManagerext().getName() + "导出用户信息失败,请重试"
    + ser.getUserExt().getXm() + "!因权限限制,失败",
    0, loginManager.getManagerext().getName() , ser.getUserExt().getXm());
    Warn warn = new Warn();
    warn.warn(request, response, "导出用户信息,失败!", "null");
    }
    }
    List<UserVO> voList = new ArrayList<>();
    for (User user : list) {
    UserVO vo = new UserVO();
    vo.setId(user.getId());
    vo.setUsername(user.getUsername());
    vo.setState("0".equals(user.getState()) ? "禁用" : "启用");
    vo.setCtime(user.getCtime().toString());
    vo.setUtime(user.getUtime().toString());
    Usergroup group = groupService.findGroupById(user.getGroup().getId());
    vo.setGroup(group.getName());
    Level level = levelService.findLevelById(user.getLevel().getId());
    vo.setLevel(level.getName());
    vo.setSex("男".equals(user.getUserExt().getXbm()) ? "男" : "女");
    vo.setType(level.getType());
    vo.setName(user.getUserExt().getXm());
    voList.add(vo);
    }

    ExportUtil ex = new ExportUtil();
    String[] strArray = { "姓名", "账号", "机构", "类型", "性别", "角色", "状态" };
    ServletOutputStream out = response.getOutputStream();
    response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode(UUID.randomUUID()+".xlsx", "UTF-8"));
    String[] flelds = { "name", "username", "level", "type", "sex", "group", "state" };
    ex.writeFile(strArray, voList, out, flelds);
    }

  • 相关阅读:
    区分浏览器的刷新与关闭(网上查到,记录一下)
    echarts中设置markPoint
    Vue自定义指令,ref ,sync,slot
    手动封装on,emit,off
    数组的一些操作
    ES6-字符串扩展-padStart(),padEnd()
    MongoDB 数据库
    新地方
    使用echarts踩过的一些坑
    IE无法访问vue项目
  • 原文地址:https://www.cnblogs.com/490889763-qq/p/11270387.html
Copyright © 2011-2022 走看看