0

我正在尝试开发一个表单来上传图像并将它们插入到数据库的 blob 字段中。我正在关注本指南http://www.codejava.net/coding/upload-files-to-database-servlet-jsp-mysql

这是我的表格

<form method="post" action="FileUploadDBServlet" enctype="multipart/form-data" id="FormNews" name="FormNews">
<input type="file" name="photo" id="photo" size="50"/>
<input type="submit" value="Procedi">
</form>
/////////////// FileUploadDBServlet is a servlet

当我尝试以这种方式获取“照片”字段中的内容时

 Part filePart = request.getPart("photo");

我总是有一个空值;filePart 始终为空。

不知道我在哪里犯了错误。

4

3 回答 3

0

正确的方法应该是

request.getParameter("photo");
于 2013-10-15T10:41:34.087 回答
0

您需要使用以下命令注释您的 servlet:

 @MultipartConfig

启用对解析multipart/form-data请求的支持。否则,请求的内容将始终为null

例子:

@WebServlet(description="descriptionHere", urlPatterns={"/urlPatternsHere"}
@MultipartConfig
public class Upload extends HttpServlet {
// some code here
}

然后你可以使用:

Part filePart = request.getPart("photo");

并检索您的请求内容。

于 2013-10-15T11:04:41.550 回答
0

第 1 步:设置

enctype='multipart/form-data'

喜欢

<form id="some_form" name="some_form_name" enctype='multipart/form-data' >
</form>

以你的形式

第 2 步:在您的控制器/servlet/JSP 中

Byte[] photo_param = request.getParameter("photo");

第 3 步:将此字节数组存储在您的数据库中,其中 column datatype="blob"

于 2013-10-15T10:55:43.783 回答