Commit 069a0012a16bae69ef092b7695a0d61189e408de

Authored by rvangrev
1 parent 24e5d678

Annotations ajoutées

Méthodes findByXX Ajoutées
src/main/java/fr/plil/sio/examen/api/Animal.java
@@ -6,22 +6,26 @@ import javax.persistence.Entity; @@ -6,22 +6,26 @@ import javax.persistence.Entity;
6 import javax.persistence.GeneratedValue; 6 import javax.persistence.GeneratedValue;
7 import javax.persistence.GenerationType; 7 import javax.persistence.GenerationType;
8 import javax.persistence.Id; 8 import javax.persistence.Id;
  9 +import javax.persistence.JoinColumn;
9 import javax.persistence.ManyToOne; 10 import javax.persistence.ManyToOne;
  11 +import javax.persistence.Table;
10 12
11 /** 13 /**
12 * An animal must have a name one and only one owner 14 * An animal must have a name one and only one owner
13 */ 15 */
14 @Entity 16 @Entity
  17 +@Table(name="ANIMAL_T")
15 public class Animal implements Serializable { 18 public class Animal implements Serializable {
16 19
17 @Id 20 @Id
18 @GeneratedValue(strategy = GenerationType.AUTO) 21 @GeneratedValue(strategy = GenerationType.AUTO)
19 private Long id; 22 private Long id;
20 23
21 - @Column(nullable = false) 24 + @Column(name="NAME_A",nullable = false)
22 private String name; 25 private String name;
23 26
24 @ManyToOne(optional = false) 27 @ManyToOne(optional = false)
  28 + @JoinColumn(name="OWNER_ID")
25 private Owner owner; 29 private Owner owner;
26 30
27 public Long getId() { 31 public Long getId() {
src/main/java/fr/plil/sio/examen/api/Comment.java
1 package fr.plil.sio.examen.api; 1 package fr.plil.sio.examen.api;
2 2
  3 +import javax.persistence.Column;
  4 +import javax.persistence.Entity;
  5 +import javax.persistence.GeneratedValue;
  6 +import javax.persistence.GenerationType;
  7 +import javax.persistence.Id;
  8 +import javax.persistence.JoinColumn;
  9 +import javax.persistence.ManyToOne;
  10 +import javax.persistence.OneToOne;
  11 +import javax.persistence.Table;
  12 +
3 /** 13 /**
4 * A comment is made by an reporter (i.e. an owner) on ANY animal 14 * A comment is made by an reporter (i.e. an owner) on ANY animal
5 * (not only the ones he owns). 15 * (not only the ones he owns).
@@ -11,11 +21,22 @@ package fr.plil.sio.examen.api; @@ -11,11 +21,22 @@ package fr.plil.sio.examen.api;
11 * TODO: complete the classes in API to support comment serialization in the 21 * TODO: complete the classes in API to support comment serialization in the
12 * database. 22 * database.
13 */ 23 */
  24 +@Entity
  25 +@Table(name="COMMENT_T")
14 public class Comment { 26 public class Comment {
15 27
  28 + @Id
  29 + @GeneratedValue(strategy = GenerationType.AUTO)
  30 + private Long id;
  31 +
  32 + @ManyToOne(optional = false)
  33 + @JoinColumn(name="OWNER_ID")
16 private Owner reporter; 34 private Owner reporter;
17 35
  36 + @ManyToOne(optional = false)
  37 + @JoinColumn(name="ANIMAL_ID")
18 private Animal animal; 38 private Animal animal;
19 39
  40 + @Column(nullable = false)
20 private String message; 41 private String message;
21 } 42 }
src/main/java/fr/plil/sio/examen/api/Owner.java
@@ -8,18 +8,20 @@ import javax.persistence.GeneratedValue; @@ -8,18 +8,20 @@ import javax.persistence.GeneratedValue;
8 import javax.persistence.GenerationType; 8 import javax.persistence.GenerationType;
9 import javax.persistence.Id; 9 import javax.persistence.Id;
10 import javax.persistence.OneToMany; 10 import javax.persistence.OneToMany;
  11 +import javax.persistence.Table;
11 12
12 /** 13 /**
13 * An owner has a name and zero, one or more animals. 14 * An owner has a name and zero, one or more animals.
14 */ 15 */
15 @Entity 16 @Entity
  17 +@Table(name="OWNER_T")
16 public class Owner { 18 public class Owner {
17 19
18 @Id 20 @Id
19 @GeneratedValue(strategy = GenerationType.AUTO) 21 @GeneratedValue(strategy = GenerationType.AUTO)
20 private Long id; 22 private Long id;
21 23
22 - @Column(nullable = false) 24 + @Column(name="NAME_O",nullable = false)
23 private String name; 25 private String name;
24 26
25 @OneToMany(mappedBy = "owner") 27 @OneToMany(mappedBy = "owner")
src/main/java/fr/plil/sio/examen/repositories/AnimalRepository.java
@@ -13,4 +13,8 @@ public interface AnimalRepository extends JpaRepository<Animal,Long> { @@ -13,4 +13,8 @@ public interface AnimalRepository extends JpaRepository<Animal,Long> {
13 * about other kind of object ?). 13 * about other kind of object ?).
14 */ 14 */
15 List<Animal> findByOwner(Owner owner); 15 List<Animal> findByOwner(Owner owner);
  16 +
  17 + List<Animal> findByName(String name);
  18 +
  19 +// Animal findById(Long id);
16 } 20 }
src/main/java/fr/plil/sio/examen/repositories/CommentRepository.java
1 package fr.plil.sio.examen.repositories; 1 package fr.plil.sio.examen.repositories;
2 2
3 import fr.plil.sio.examen.api.Comment; 3 import fr.plil.sio.examen.api.Comment;
  4 +import fr.plil.sio.examen.api.Owner;
  5 +import fr.plil.sio.examen.api.Animal;
  6 +import java.util.List;
4 import org.springframework.data.jpa.repository.JpaRepository; 7 import org.springframework.data.jpa.repository.JpaRepository;
5 8
6 /** 9 /**
7 * TODO: complete this interface for new find methods. 10 * TODO: complete this interface for new find methods.
8 */ 11 */
9 public interface CommentRepository extends JpaRepository<Comment, Long>{ 12 public interface CommentRepository extends JpaRepository<Comment, Long>{
  13 +
  14 + List<Comment> findByOwner(Owner owner);
  15 +
  16 + List<Comment> findByAnimal(Animal animal);
  17 +
  18 + List<Comment> findByMessage(String message);
  19 +
  20 +// Comment findById(Long id);
10 } 21 }
src/main/java/fr/plil/sio/examen/repositories/OwnerRepository.java
1 package fr.plil.sio.examen.repositories; 1 package fr.plil.sio.examen.repositories;
2 2
3 import fr.plil.sio.examen.api.Owner; 3 import fr.plil.sio.examen.api.Owner;
  4 +import java.util.List;
4 import org.springframework.data.jpa.repository.JpaRepository; 5 import org.springframework.data.jpa.repository.JpaRepository;
5 6
6 public interface OwnerRepository extends JpaRepository<Owner, Long>{ 7 public interface OwnerRepository extends JpaRepository<Owner, Long>{
7 8
  9 + List<Owner> findByName(String name);
  10 +
  11 +// Owner findById(Long id);
8 } 12 }