Galera tenho um entidade dessa forma:
Estou usando Spring Boot e no Postman para instanciar novos objetos da classe User
@EqualsAndHashCode(onlyExplicitlyIncluded = true)
@Entity
@Table(name = "tb_users")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@EqualsAndHashCode.Include
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "cod_user")
private Long id;
@Column(name = "name")
private String name;
@Column(name = "gender")
private String gender;
@Column(name = "birthday")
private LocalDate birthday;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "cod_address", unique = true)
private Address address;
private ??? profilePhoto;
Minha dúvida é: Como fazer o upload de uma imagem e associar ao atributo profilePhoto, pra quando eu for instanciar um novo objeto já poder inserir essa imagem de perfil na criação do usuário?
OBSERVAÇÃO: Não estou usando Spring MVC ou Thymeleaf, apenas o Spring Boot e fazendo as requisições via Postman, que no caso para criar uma nova instancia estou passando um JSON:
{
"name": "Gui",
"gender": "male",
"birthday": "1998-12-12",
"address":{
"address": "Rua da Neves",
"city": "Niterói",
"state": "Rio de Janeiro",
"postalCode": "579777-90",
"country": "Brazil"
},
"profilePhoto": ???
Como eu posso passar no meu User Controller uma forma de criar essa imagem e associar ao atributo profilePhoto?
@PostMapping("/create")
@ResponseStatus(HttpStatus.CREATED)
public Person create(@RequestBody Person person) {
return personService.create(person);
}