SpringMVC:如何从DB下载Excel

SpringMVC:如何从DB下载Excel,spring,model-view-controller,Spring,Model View Controller,我对SpringMVC和Excel有问题。我将excel文件作为lob存储在数据库中。我的实体数据库的这一部分就是PostgreSQL @Lob @Column(name = "Exel") private String exel; 下一步,我想从数据库和用户可以下载它从网页这是控制器 @RequestMapping(value = "/downloadExelTemplate.xls", method = RequestMethod.GET) public v

我对SpringMVC和Excel有问题。我将excel文件作为lob存储在数据库中。我的实体数据库的这一部分就是PostgreSQL

    @Lob
    @Column(name = "Exel")
    private String exel;
下一步,我想从数据库和用户可以下载它从网页这是控制器

@RequestMapping(value = "/downloadExelTemplate.xls", method = RequestMethod.GET)
    public void downloadExelTemplate(HttpServletResponse response)
            throws IOException {
        response.setContentType("application/x-msexcel");
        ExelDTO exel = service.getExel(new Long(1));
        InputStream is = new ByteArrayInputStream(exel.getExel().getBytes());
        BufferedWriter outex = new BufferedWriter(new FileWriter("out.xls"));
        outex.write(exel.getExel());
        outex.close();
        ServletOutputStream out = response.getOutputStream();
        out.write(exel.getExel().getBytes());
        is.close();
        out.close();
    }
我得到了不正确的xls文件和错误。
请帮帮我。怎么了?当我从流中获取文件时,效果相同。

所以我解决了我的问题,我将hibernate实体中的数据类型更改为

@Lob
byte[] exelData;

一切都很顺利。当只有文本文件时,将@lob映射到字符串没有问题,但与ms office格式连接失败。因此,我学会了如何正确保存数据文件。

请准确解释问题所在?我的问题是,当我在硬盘上获得xls文件时,它是一个失败的文件,我有许多奇怪的想法,我无法读取它,因此它没有用。我认为这与转换有关。