Загрузка изображения в springboot как binairy . но не могу сделать это необязательным

#spring #spring-boot #image #if-statement #file-upload

Вопрос:

Я загружаю изображение как binairy в springboot mongo ,это работает, но как мне сделать так, чтобы, если изображения нет, сохранить другие значения без изображения.

Вот моя модель

сущность публичного класса {

  @Id
    private String id;
    private String username;
    private String name;
    private String surname;
    private String dob;
    private String position;
    private String email;
    private String contactNo;
    private Address address;
    private BusinessInformation businessInformation;
    private Binary image;



//With contstructor and Getters and Setter
 

Мой контроллер выглядит следующим образом ,поверьте, я допускаю ошибку в разделе изображения if

 //Update or Create entity
    @RequestMapping(value = "/updateEntity", method = RequestMethod.POST, consumes = "multipart/form-data")
    public ResponseEntity<Entity> updateEntity(@RequestPart("entity") @Valid Entity entity, @RequestPart("file") @Valid Optional<MultipartFile> image) throws IOException {

        byte[] imageData = null;
        if (image.isPresent() amp;amp; image.get() != null)
            imageData = image.get().getBytes();
        if (imageData == null amp;amp; entity.getId() != null) {
            Optional<Entity> readEntity = entityRepository.findById(entity.getId());
            if (readEntity.get() != null)
                imageData = readEntity.get().getImage().getData();
        }
        if (imageData != null) {
            entity.setImage(new Binary(BsonBinarySubType.BINARY, imageData));
        }


    Entity result = entityRepository.save(entity);
    return ResponseEntity.ok().body(result);

}
 

При сохранении без моего изображения я получаю исключение NullPointerException: ошибка null