Estou começando a desenvolver um sistema de avaliações de filmes e series que vai ser o trabalho desse período da faculdade. O projeto vai ter as classes de usuários, filmes, series e avaliações. A ideia é que cada usuário possa avaliar filmes e series e no front apresente na tela do filme escolhido as avaliações que todos usuários fizerem sobre o filme ou serie. Vou utilizar java com Servlet e JPA para a conexão com o banco. A minha duvida é como vou criar o método de salvar uma avaliação que o usuário fez sobre determinado filme no banco. Vou deixar o código do que já fiz, se alguém tiver alguma dica de como eu posso fazer, me conta por favor!
Usuario:
package br.com.review.model.entities;
import java.time.LocalDate;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
@Entity
@Table(name = "usuarios")
public class Usuario {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "usuario_id")
private Long id;
@Column(name = "nome")
private String nome;
@Column(name = "sobrenome")
private String sobrenome;
@Column(name = "email")
private String email;
@Column(name = "senha")
private String senha;
@Column(name = "data_nascimento")
private LocalDate dataDeNascimento;
@Column(name = "genero")
private String genero;
@OneToMany(mappedBy = "usuario")
private List<Avaliacoes> listAvaliacoes;
public Usuario(String nome, String sobrenome, String email, String senha, LocalDate dataDeNascimento,
String genero) {
this.nome = nome;
this.sobrenome = sobrenome;
this.email = email;
this.senha = senha;
this.dataDeNascimento = dataDeNascimento;
this.genero = genero;
}
public Usuario() {}
public Long getId() {
return id;
}
public String getNome() {
return nome;
}
public String getSobrenome() {
return sobrenome;
}
public String getEmail() {
return email;
}
public String getSenha() {
return senha;
}
public LocalDate getDataDeNascimento() {
return dataDeNascimento;
}
public String getGenero() {
return genero;
}
public List<Avaliacoes> getListAvaliacoes() {
return listAvaliacoes;
}
public List<Avaliacoes> setListAvaliacoes(List<Avaliacoes> listAvaliacoes) {
return listAvaliacoes = listAvaliacoes;
}
@Override
public String toString() {
return "Usuario [id=" + id + ", nome=" + nome + ", sobrenome=" + sobrenome + ", email=" + email + ", senha="
+ senha + ", dataDeNascimento=" + dataDeNascimento + ", genero=" + genero + "]";
}
}