56 lines
1.3 KiB
Java
56 lines
1.3 KiB
Java
package at.technikumwien.movies;
|
|
|
|
import lombok.*;
|
|
|
|
import javax.persistence.*;
|
|
import javax.xml.bind.annotation.XmlAttribute;
|
|
import javax.xml.bind.annotation.XmlRootElement;
|
|
import java.time.LocalDate;
|
|
|
|
@Data
|
|
@NoArgsConstructor
|
|
@AllArgsConstructor
|
|
|
|
@Entity
|
|
@Table(name = "t_actors")
|
|
@NamedQueries({
|
|
@NamedQuery(
|
|
name = "Actors.getIdByProperties",
|
|
query = "SELECT a FROM Actors a WHERE " +
|
|
"a.firstname LIKE :firstname AND " +
|
|
"a.lastname LIKE :lastname AND " +
|
|
"a.sex = :sex"// AND " +
|
|
//"a.birthdate = :birthdate"
|
|
),
|
|
@NamedQuery(
|
|
name = "Actors.selectAllActors",
|
|
query = "SELECT n FROM Actors n"
|
|
)
|
|
})
|
|
@XmlRootElement
|
|
public class Actors {
|
|
@Id
|
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
|
private Long id;
|
|
|
|
@Column(length = 100, nullable = false)
|
|
@XmlAttribute
|
|
private String firstname;
|
|
|
|
@Column(length = 100, nullable = false)
|
|
@XmlAttribute
|
|
private String lastname;
|
|
|
|
@Column(nullable = false)
|
|
@XmlAttribute
|
|
private Sex sex;
|
|
|
|
@Column(nullable = false)
|
|
@XmlAttribute
|
|
private LocalDate birthdate;
|
|
|
|
public Actors(String firstname, String lastname, Sex sex, LocalDate birthdate) {
|
|
this(null, firstname, lastname, sex, birthdate);
|
|
}
|
|
}
|