Java FileInputStream到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

我试图将图像上载到数据库(sql.Blob),但在转换对象时遇到问题

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);”