Java FileInputStream到sql.Blob
我试图将图像上载到数据库(sql.Blob),但在转换对象时遇到问题Java FileInputStream到sql.Blob,java,sql,Java,Sql,我试图将图像上载到数据库(sql.Blob),但在转换对象时遇到问题 JFileChooser jf = new JFileChooser(); if (jf.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { File f = jf.getSelectedFile(); try { FileInputStream is = new FileInputStream(f); byte[] c
JFileChooser jf = new JFileChooser();
if (jf.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
File f = jf.getSelectedFile();
try {
FileInputStream is = new FileInputStream(f);
byte[] cadenaBytes =IOUtils.toByteArray(is);
imagenUser.setBytes(1, cadenaBytes);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
问题在于执行最后一行时:
java.lang.NullPointerException
我有一个FileInputStream
,我需要一个sql.Blob
解决方案:将最后一条车道替换为:
imagenUser= new SerialBlob(cadenaBytes);
数据库连接代码在哪里?我看不到已初始化的
ImageUser
——这是您在其他类中看到的NullPointerException
?的行。我正在做MVC和Mapper,这段代码在控制器类中。好的,问题解决了。解决方案是将最后一行替换为“ImageUser=new SerialBlob(cadenaBytes);”