All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.adaptrex.sandbox.entities.jpa.Movie Maven / Gradle / Ivy

The newest version!
package com.adaptrex.sandbox.entities.jpa;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@SuppressWarnings("serial")
@Entity
@Table(name = "movie")
public class Movie implements Serializable {

	@Id
	@Column(name = "id")
	@GeneratedValue
	private int		id;

	@Column(name = "title")
	private String	title;
	
	@Column(name = "opening_date")
	@Temporal(TemporalType.DATE)
	private Date openingDate;
	
	@Column
	private Double gross;
	
	@ManyToOne
	@JoinColumn(name="director_id", referencedColumnName="id")
	private Director director;
	
	@ManyToMany
	@JoinTable(
		     name="theater_has_movie",
		     joinColumns={@JoinColumn(name="movie_id", referencedColumnName="id")},
		     inverseJoinColumns={@JoinColumn(name="theater_id", referencedColumnName="id")})
	private List theaters;

	/*
	 * Getters
	 */
	public List getTheaters() {
		return theaters;
	}
	
	public Director getDirector() {
		return director;
	}
	
	public Integer getId() {
		return id;
	}
	
	public String getTitle() {
		return title;
	}
	
	public Date getOpeningDate() {
		return openingDate;
	}
	
	public Double getGross() {
		return gross;
	}
	
	/*
	 * Setters
	 */
	public void setTheaters(List theaters) {
		this.theaters = theaters;
	}
	
	public void setDirector(Director director) {
		this.director = director;
	}
	
	public void setTitle(String title) {
		this.title = title;
	}
	
	public void setOpeningDate(Date date) {
		this.openingDate = date;
	}
	
	public void setGross(Double gross) {
		this.gross = gross;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy