0
봄에 파일을 바인딩하는 데 문제가 있습니다. 폴더에 파일을 저장하고 데이터베이스에 파일 이름을 저장하려고했습니다. 하지만 양식에 파일을 바인딩하는 동안 오류가 발생합니다.봄에 파일을 바인딩하고 폴더에 파일을 업로드하는 방법
@Controller
@RequestMapping(value="/addStudent",method=RequestMethod.POST)
public String saveStudent(@RequestParam("images") MultipartFile files,@ModelAttribute("addstd") StudentInfo theStudent,Model model){
String fileName=null;
if(!files.isEmpty()){
try {
String path= session.getServletContext().getRealPath("/WEB-INF/resources/images");
String newName=String.valueOf(new java.util.Date().getTime());
fileName=files.getOriginalFilename();
String ext=FilenameUtils.getExtension(fileName);
File imageFile=new File(path,newName+"."+ext);
files.transferTo(imageFile);
theStudent.setImages(newName+"."+ext);
} catch (Exception e) {
}
}
studentService.saveStudent(theStudent);
return "redirect:/login";
}
데이터베이스 클래스
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private int id;
@Column(name="year_id")
private int year;
@Column(name="faculty_id")
private int faculty;
@Column(name="firstname")
private String firstName;
@Column(name="lastname")
private String lastName;
@Column(name="contact_no")
private String contact_No;
@Column(name="address")
private String address;
@Column(name="email")
private String email;
@Column(name="images")
private String images;
내 JSP 페이지는이 코드에서
<form:form action="addStudent" enctype="multipart/form-data" modelAttribute="addstd" method="POST">
<form:hidden path="id" />
<form:input path="firstName" placeholder="Fistname" />
<form:input path="lastName" placeholder="Lastname" />
<form:input path="contact_No" placeholder="Contact Number" />
<form:input path="address" placeholder="Address" />
<form:input path="email" placeholder="Email"/
Year:
<form:select path="year">
<c:forEach var="temp" items="${studentyear}">
<form:option value="${temp.yearId}">${temp.year}</form:option>
</c:forEach>
</form:select>
Faculty:
<form:select path="faculty">
<c:forEach var="temp" items="${studentfaculty}">
<form:option value="${temp.faculty_id}" >${temp.faculty}</form:option>
</c:forEach>
</form:select>
Profile: <form:input type="file" path="images" />
<input type="submit" value="Add/Update Record" class="button" />
</form:form>
나는 오류 "클라이언트가 보낸 요청을 얻고 있었다 구문 적으로 부정확하다. "
경로를 바꿀려고했지만 "TDL 또는 태그 파일에 따르면 태그 입력에 필수적인 속성 경로는" – sudeepsth
양식 태그를 front.see에서 제거합니다. 업데이트 된 답변은 미안합니다. 그것을 놓친 –