Springboot通过前端发起请求,拿到数据库中的数据并生成excel表格,postman请求并下载文件

这篇具有很好参考价值的文章主要介绍了Springboot通过前端发起请求,拿到数据库中的数据并生成excel表格,postman请求并下载文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

springboot版本3.2.0,数据库版本8

mybatisplus版本3.5.4.1

依赖
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>easyexcel</artifactId>
    <version>3.3.3</version></dependency>
实体类

实体类中的枚举类型转换,因调用方法后还是不能转换类型所以暂未解决

public class User {
    @ExcelProperty("用户编号")
    @ColumnWidth(20)
    private Long id;

    @ExcelProperty("姓名")
    @ColumnWidth(20)
    private String username;

    @ExcelProperty("密码")
    @ColumnWidth(20)
    private String password;

    @ExcelProperty("用户电话")
    @ColumnWidth(20)
    private String phone;

    @ExcelProperty("用户信息")
    @ColumnWidth(20)
    private String info;

    //@ExcelProperty(value = "用户状态",converter = UserStatusConverter.class)
    @ExcelIgnore
    @ColumnWidth(20)
    private UserStatus status;

    @ExcelProperty("用户金额")
    @ColumnWidth(20)
    private Integer balance;

    @ExcelProperty("用户创建时间")
    @ColumnWidth(20)
    private LocalDateTime createTime;

    @ExcelProperty("用户更新时间")
    @ColumnWidth(20)
    private LocalDateTime updateTime;
Controller层
  @GetMapping("/user")
    public void exportUserExcel(HttpServletResponse response){
        try{
            this.setExcelResponseProp(response,"用户列表");
            List<User> userList =userService.listAllUsers(new User());
            EasyExcel.write(response.getOutputStream())
                    .head(User.class)
                    .excelType(ExcelTypeEnum.XLS)
                    .sheet("用户列表")
                    .doWrite(userList);
        }
        catch (IOException e) {
            throw new RuntimeException(e);
        }
        }

    /**
     * postman测试
     * @param response
     * @param rawFileName
     * @throws UnsupportedEncodingException
     */
    private  void setExcelResponseProp(HttpServletResponse response,String rawFileName) throws UnsupportedEncodingException{
            response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
            response.setCharacterEncoding("utf-8");
            String fileName = URLEncoder.encode(rawFileName, "UTF-8").replaceAll("\\+", "%20");
            response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
        }
postman测试

Springboot通过前端发起请求,拿到数据库中的数据并生成excel表格,postman请求并下载文件,spring boot,前端,数据库,java

Excel表格

获取数据成功

Springboot通过前端发起请求,拿到数据库中的数据并生成excel表格,postman请求并下载文件,spring boot,前端,数据库,java文章来源地址https://www.toymoban.com/news/detail-802639.html

到了这里,关于Springboot通过前端发起请求,拿到数据库中的数据并生成excel表格,postman请求并下载文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot的controller如何拿到post请求中的json数据

    在SpringBoot的Controller中,可以使用注解@RequestBody来获取POST请求中的JSON数据。我们可以将这个注解应用到一个Controller方法的参数上,Spring将会负责读取请求正文中的数据,将其反序列化为一个Java对象,并将其作为Controller方法的参数传递。以 Java 代码为例,示例代码如下: 在

    2024年02月15日
    浏览(40)
  • 【Ajax】如何通过axios发起Ajax请求

    ✍️ 作者简介: 前端新手学习中。 💂 作者主页: 作者主页查看更多前端教学 🎓 专栏分享:css重难点教学   Node.js教学 从头开始学习   ajax学习 Axios是专注于网络数据请求的库,相比于原生的XMLHttpRequest对象,axios简单易用。相比于Jquery,axios更加轻量化,只专注于网络数据请

    2024年02月02日
    浏览(59)
  • 记录--前端中 JS 发起的请求可以暂停吗

    在前端中,JavaScript(JS)可以使用XMLHttpRequest对象或fetch API来发起网络请求。然而,JavaScript本身并没有提供直接的方法来暂停请求的执行。一旦请求被发送,它会继续执行并等待响应。 尽管如此,你可以通过一些技巧或库来模拟请求的暂停和继续执行。下面是一种常见的方法

    2024年02月05日
    浏览(38)
  • 关于如何通过 postman 发起上传文件的请求,postman上传图片视频

    我们通常会使用 postman 发起请求,测试数据。有些请求将图片,视频等文件上传到服务器,如何通过 postman 实现上传文件呢? 定义请求方式和请求路径 请求体选择 body body 下选择 form-data 在参数中输入 file key 值输入完 file 后,在下拉框中选择 file 此时 value 会显示一个 Select

    2024年02月11日
    浏览(57)
  • 使用element的form表单,实现显示后端错误信息,并且如果有错误信息(前端通过rules检测的错误信息或者后端传过来的错误信息(如该用户已经注册或该邮箱已经存))点击提交按钮不会再次发起异步请求

    前提(触发方式可以有两种触发 trigger: \\\'blur\\\'   或 trigger: \\\'change\\\' ) 主要是三个要点: 1.给el-form-item标签设置error属性,并且绑定data里面的数据(也即:error=\\\"emailError\\\"): 2.设置rules规则为 改变trigger触发方式,设置为trigger: \\\'change\\\' (如果是trigger: \\\'blur\\\',表单项(el-form-item)的input输入

    2024年02月03日
    浏览(48)
  • 前端 axios 通过 get 请求发送 json 数据

    先说结论: axios 不能通过 get 请求发送 json 数据 使用 postman 可以做到通过 get 请求发送 json 数据 但是通过 axios 框架就不行, 主要是因为axios是对ajax的一个封装。他本身不支持get请求在body体传参。 原生和jquery的ajax是支持的。建议跟后端沟通,你把json拼在url后面,后端从url的

    2024年02月11日
    浏览(56)
  • 前端向后端发起请求时,报Uncaught (in promise) ReferenceError: ***** is not defined的错

     前端调用后端的接口,显示的Uncaught (in promise) ReferenceError: getGoods is not defined。但是我们在后端中配置了该接口的请求地址的。同时在前端的axios中也进行了相关接口的封装的。 报错的截图:   原因是没有在页面中引入getGoods这个封装好的接口。 解决方法:只需在需要使用的

    2024年02月08日
    浏览(67)
  • HttpURLConnection发起请求中文数据乱码问题解决

    HttpURLConnection发送POST请求时,请求参数中有中文,且请求成功后,后端显示出现乱码 POST的form没有转码的问题,服务器数据将byte转成utf8,utf8编码是3个字节对应一个字符,但如果只读了一个字节或者不为3的倍数这样强转编码就会导致乱码出现 在POST方法初始化StringEntity时指定

    2024年02月11日
    浏览(43)
  • Java发起同异步HTTP请求和处理数据

    📚专栏 「Java数据集成」专栏 《Java发起HTTP请求并解析JSON返回数据》:下图简称为《请求和解析》 《基于MyBatis实现依次、批量、分页增删改查操作》:下图简称为《依批分增删改查》 《用Python根据JSON生成Java类代码和数据库建表SQL语句》:下图简称为《生成代码脚本》 《基

    2023年04月21日
    浏览(49)
  • python使用flask实现前后端分离&通过前端修改数据库数据【全栈开发基础】

    完整代码放到了最后,时间紧张的话直接拉到最后或点击目录【🥩 完整代码】看完整代码 这里先提一下,我们运行后端代码之前需要先建立一个名字为 python 的数据库,而后在该数据库下创建表 userinfo ,因为看到有的朋友后端代码拿过去后会运行不起来或者就是直接报错了

    2023年04月09日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包