Spring Data JPA Проблема с репозиторием служб «многие ко многим»JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Spring Data JPA Проблема с репозиторием служб «многие ко многим»

Сообщение Anonymous »

Я пытаюсь добавить объект ManyToMany в свое приложение. Я создал объект, но не могу его реализовать.

Класс актеров

Код: Выделить всё

@Entity
@Table(name = "actor")
public class Actor {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;

@Column(nullable = false, name = "actor_name")
private String actorName;

@ManyToMany(mappedBy = "actor", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
private Set movie = new HashSet();

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getActorName() { return actorName; }

public void setActorName(String actorName) {
this.actorName = actorName;
}

public Set getMovie() {
return movie;
}

public void setMovie(Set movie) {
this.movie = movie;
}
}
На классе кино у меня

Код: Выделить всё

@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(
name = "movie_actor",
joinColumns = {@JoinColumn(name = "movie_id")},
inverseJoinColumns = {@JoinColumn(name = "actor_id")}
)
Set actor = new HashSet();

........................

public Set getActor () {
return actor;
}

public void setActor(Set actor){
this.actor = actor;
}
Я создал свою сущность точно так же, но в MovieService;

Код: Выделить всё

Actor actor = ActorRepository.findByActorName(movie.getActor().getActorName());
movie.setActor(actor);
Эта часть выдает ошибку. Метод movie.getActor().getActorName() не может быть найден. Где мне нужно посмотреть? В IDE также говорится, что метод getActorName и setActorName никогда не используются. Я также добавляю свои ActorRepository и ActorService, чтобы поближе рассмотреть проблему.

ActorRepository

Код: Выделить всё

public interface ActorRepository extends JpaRepository {

Set findByActorName(String actorName);
}
ActorService

Код: Выделить всё

@Service
public class ActorService {

private ActorRepository actorRepository;

@Autowired
public ActorService(ActorRepository actorRepository) {
this.actorRepository = actorRepository;
}

public List getAllActor() {
return actorRepository.findAll();
}
}
После добавления ManyToMany я использовал объект OneToMany. Сервисы работают для OneToMany. Как я могу использовать их для ManyToMany? Мне нужно добавить в фильмы несколько актеров. Мне не удалось найти проекты MVC для реализации ManyToMany.

Подробнее здесь: https://stackoverflow.com/questions/550 ... ry-problem
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»