以下是使用springMVC
和Hiberrnate
尝试将图像存储到数据库时的错误消息。
无法转换类型' org.springframework.web.multipart.commons.CommonsMultipartFile'的属性值。要求的类型' java.sql.Blob'对于财产
我正在使用以下代码: -
1)在jsp中
<html><body>
<form:form action="submitPartner1.do" commandName="partnerindividual" enctype="multipart/form- data" >
<input type="file" name="image" />
<form:form>
</body>
</html>
2)Partner.java
class Partner{
Blob image;
//getter and setter
}
3)在控制器类
中@RequestMapping(value="/submitPartner1.do",method=RequestMethod.POST)
public String save(@ModelAttribute("partnerindividual")Partner partnerindividual,@RequestParam("file") MultipartFile file) throws IOException{
Blob blob=null;
try{
byte[] contents = file.getBytes();
blob = new SerialBlob(contents);
partnerindividual.setImage(blob);
//storing into database
service.save(partnerindividual);
}
catch(Exception e){e.printStackTrace();}
System.out.println(partindi);
return "becomeapartnerContinue";
}
}
4)
在spring_config.xml
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
<property name="maxUploadSize" value="10000000" />
</bean>
答案 0 :(得分:0)
错误显示从文件字节到Blob的转换存在问题。
您可以对控制器内的save()方法进行更改吗?
替换下面的代码行
blob = new SerialBlob(contents);
with
blob = Hibernate.createBlob(contents);