Skip to content

Instantly share code, notes, and snippets.

@cosbor11
Last active January 22, 2016 04:38
Show Gist options
  • Select an option

  • Save cosbor11/40487e2c068897db518f to your computer and use it in GitHub Desktop.

Select an option

Save cosbor11/40487e2c068897db518f to your computer and use it in GitHub Desktop.
Save movies with many to many relationship to actors
// Define Harrison Ford Actor
Actor harrisonFordActor = new Actor();
harrisonFordActor.setFirstName("Harrison");
harrisonFordActor.setLastName("Ford");
// Define Mark Hamill Actor
Actor markHamillActor = new Actor();
markHamillActor.setFirstName("Mark");
markHamillActor.setLastName("Hamill");
// Create Star Wars Movie
Movie starWarsMovie = new Movie();
starWarsMovie.setTitle("A New Hope");
// Create Indiana Jones Movie
Movie indianaJonesMovie = new Movie();
indianaJonesMovie.setTitle("Raiders of the Lost Ark");
// Set relationship for Star Wars Movie to its actors
List<Actor> starWarsActors = new ArrayList<>();
starWarsActors.add(harrisonFordActor);
starWarsActors.add(markHamillActor);
starWarsMovie.setActors(starWarsActors);
// Set relationship for Star Wars Movie to its actors
List<Actor> indianaJonesActors = new ArrayList<>();
indianaJonesActors.add(harrisonFordActor);
indianaJonesMovie.setActors(indianaJonesActors);
// Optional. You do not need to set the inverse relationships
/*
List<Movie> harrisonFordsMovies = new ArrayList<>();
harrisonFordsMovies.add(starWarsMovie);
harrisonFordsMovies.add(indianaJonesMovie);
harrisonFordActor.setMovies(harrisonFordsMovies);
List<Movie> markHamillMovies = new ArrayList<>();
markHamillMovies.add(starWarsMovie);
markHamillActor.setMovies(markHamillMovies);
*/
// Persist the movies
persistenceManager.saveEntity(starWarsMovie);
persistenceManager.saveEntity(indianaJonesMovie);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment