Я разрабатываю Rest API с использованием Spring Boot и AngularJS на стороне клиента, я загружаю файлы в/resources/static/upload с помощью Spring с помощью RestController ниже и используя их в клиенте сторонаSpring: ссылка на ресурсы/статическая папка
@RestController
@CrossOrigin("*")
public class FilmController {
@Autowired
private FilmRepository filmRepository;
@RequestMapping(value = "/films", method = RequestMethod.POST)
public void saveFilm(@RequestParam("file") MultipartFile file) throws Exception {
File convFile = new File("src/main/resources/static/upload/"+file.getOriginalFilename());
convFile.createNewFile();
FileOutputStream fos = new FileOutputStream(convFile);
Blob blob = new SerialBlob(file.getBytes());
fos.write(file.getBytes());
fos.close();
System.out.println(convFile.getName());
filmRepository.save(new Film(convFile.getName(), blob));
}
@RequestMapping(value = "/films", method = RequestMethod.GET)
public List<Film> getAllFilms() {
return filmRepository.findAll();
}
}
Вот как я получил доступ к загруженному изображению «image.jpg»
<img src="http://localhost:8080/upload/image.jpg" />
Но, когда я побежал МВН пакет и я запустить мой опарник приложения, я не могу получить доступ к закачанному образ на стороне клиента, я не получаю 404.
Может кто-нибудь объяснить, как Spring хранит и ссылается на статические ресурсы и как я могу решить эту проблему.
Вы не можете ... Вы не можете загрузить путь в пути к классам, который будет эффективно находиться внутри банки. –
Итак, где я могу загружать свои файлы и до сих пор могу получить к ним доступ на стороне клиента? – jemlifathi
Используйте путь в файловой системе или подходящее хранилище данных. –