#java #html #spring
#java #HTML #spring
Вопрос:
Я работаю над usecase для загрузки сведений о студенте вместе с его изображением в spring boot. Класс сущности выглядит следующим образом.
public class Student{
private int rollNo;
private String name;
// few more fields
@Lob
private byte[] picture;
// getters setters
}
JSP file
<!DOCTYPE html>
<html>
<head>
<title>Student Registration</title>
</head>
<body>
<form action="save" method="post" enctype="multipart/form-data">
<input type="text" name="rollNo"/>
<input type="text" name="name"/>
<!-- some more fields -->
<input type="file" name="picture"/>
<input type="submit" value="Registration">
</form>
</body>
</html>
- Как я должен обрабатывать данные формы в моем методе контроллера? В двух словах, как написать метод контроллера для обработки как данных формы, так и изображения?
Ответ №1:
the very basic idea could be as follows
@RestController
public class ImageUploadController {
@RequestMapping(value="/upload", method=RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public ResponseEntity<Object> uploadFile(@RequestParam(required=true, value="picture") MultipartFile file, @RequestParam(name = "rollNo") String rollNo, @RequestParam(name = "name") String name) {
}
}
Комментарии:
1. что делать, если класс entity содержит большее количество полей, которых может не быть в этом случае. Нужно ли указывать @RequestParam(name = «XYZ») для всех полей? или есть какой-либо другой более короткий способ? я имею в виду, можем ли мы связать их как объект?