【问题标题】:How to take a file with JSP and Servlet and convert it into a Blob?如何使用 JSP 和 Servlet 获取文件并将其转换为 Blob?
【发布时间】:2012-01-31 23:27:32
【问题描述】:

我需要使用 JSP 中的输入表单将文件上传到数据库中。我使用 EJB,我的实体有一个文件属性声明为Blob,所以我需要转换上传的文件。
我该怎么办? 我读过类似的问题,但它们没有帮助......

【问题讨论】:

    标签: file jsp servlets upload blob


    【解决方案1】:

    JPA 引擎应该能够将字节数组 (byte[]) 作为 blob 存储在数据库中。我会为您的实体字段使用byte[] 而不是Blob

    【讨论】:

    • 谢谢,转换成功,但我还有其他问题。我无法获取输入参数。如果我在表单中使用enctype='multipart/form-data',我将无法使用request.getParameter("name") 获得简单的文本输入。
    • 使用支持文件上传的web框架,或者使用apache commons fileupload。
    • 完成。还有两个问题: 1 - 为什么我应该使用byte[] 而不是Blob? 2 - 当我在我的数据库中存储一个文件并打开一个表时,我看到很多奇怪的字符和 MySql 崩溃(可能字符太多)。有没有办法/格式来避免看到它们?
    • 因为 Blob 实现是由数据库供应商提供的。实体处于更高级别,字节数组是表示二进制数据的最明显的、与数据库无关的方式。关于你的 MySQL 崩溃,我不知道。是 MySQL 崩溃了,还是您用来浏览数据库表的工具?
    • 这是 MySql(通过命令行使用)。所以不可能隐藏字符,不是吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 2015-06-04
    • 2021-11-02
    相关资源
    最近更新 更多