我刚刚学会了如何使用Struts 2文件上传器来上传文件。上传后,它将该文件保存为.tmp文件。
我想把这个.tmp文件存储在数据库中,然后在服务器端检索它,然后在客户端将它显示为一个图像(就是这样)。
为此,我使用了一个byte[]数组,对吗?
我该怎么做?
编辑1:我正在寻找将tmp文件转换为图像所需的java服务器端代码,以及显示映像的struts/客户端代码--即name="object.image"。
发布于 2012-06-14 20:46:43
尝试使用这些类型的BLOB和文本类型
编辑
但戴夫·牛顿是对的!
简单的代码,只需将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或其他图片格式(我认为您正在从客户端接收图片格式,但如果没有tmp扩展,则使用jsut ),我不认为这个任务是真的!
https://stackoverflow.com/questions/11041061
复制相似问题