我刚刚学会了如何使用 Struts 2 文件上传器来上传文件。上传后,它将文件保存为 .tmp 文件。
我想获取这个 .tmp 文件并将其存储在数据库中,然后在服务器端检索它,然后在客户端将其显示为图像(就是这样)。
为此,我使用 byte[] 数组对吗?
我该怎么做呢?
编辑 1:
我正在寻找将 tmp 文件转换为图像所需的 java 服务器端代码以及用于显示图像的 struts/客户端代码 - 即name="object.image"
尝试使用这些类型BLOB 和 TEXT 类型
编辑
但是戴夫牛顿是对的!!!
简单的代码,只需更改fileinputstream
您的inputstream
FileInputStream fis = null;
PreparedStatement ps = null;
try {
conn.setAutoCommit(false);
File file = new File("myPhoto.png");
fis = new FileInputStream(file);
ps = conn.prepareStatement(INSERT_PICTURE);
ps.setString(1, "001");
ps.setString(2, "name");
ps.setBinaryStream(3, fis, (int) file.length());
ps.executeUpdate();
conn.commit();
} finally {
ps.close();
fis.close();
}
编辑 1
如果您正在寻找将 tmp 转换为 jpeg 或其他图片格式的代码,只需读取 tmp 并保存为 jpeg 或其他图片格式(我认为您正在从客户端接收图片格式,但如果没有,则 jsut 带有 tmp 扩展名,我不认为这个任务是真的!