Spring MVC3 を使用してデータベースにイメージを永続化する方法
コントローラ:
public String postAdd(@ModelAttribute("employeeAttribute") @Valid Employee employee, BindingResult result,@RequestParam("file") MultipartFile file) throws Exception{
byte[] bFile=null;
System.out.println("File Name......"+file.getName());
if (!file.isEmpty()) {
bFile = new byte[(int) file.getSize()];
FileInputStream fileInputStream = new FileInputStream(file.getOriginalFilename());
fileInputStream.read(bFile);
fileInputStream.close();
}
employee.setImage(bFile);
employeeServiceImpl.add(employee);
}
JSP ページ:
<c:url var="saveEmp" value="/manam/mobee/employee/add"/>
<form:form modelAttribute="employeeAttribute" method="POST" action="${saveEmp}" enctype="multipart/form-data" >
<form:label path="image">Image</form:label>
<input type="file" name="file" id="file"></input>
ここでは C:\Users\Public\Pictures\Sample Pictures\Desert Landscape.jpg ファイルを送信していますが、 FileInputStream は Landscape.jpg のみを受け取ります。FileInputStream の完全なファイル パスを設定する方法を提案してください。
ここで、java.io.FileNotFoundException: Forest.jpg (指定されたファイルが見つかりません) 例外が発生します。