Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Category.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Category.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Category.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -4,4 +4,6 @@
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
+
+import java.util.List;
 
 @Data
@@ -19,4 +21,10 @@
     private String name;
 
+    @ManyToMany
+    @JoinTable(name = "pet_belongs_to_category",
+            joinColumns = @JoinColumn(name = "id_category"),
+            inverseJoinColumns = @JoinColumn(name = "id_pet"))
+    List<Pet> pets;
+
     public Category(String name) {
         this.name = name;
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Donor.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Donor.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Donor.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -6,4 +6,5 @@
 
 import java.time.LocalDate;
+import java.util.List;
 
 @Data
@@ -20,4 +21,10 @@
     private String organisationName;
 
+    @ManyToMany
+    @JoinTable(name = "donor_donates_to_organisation",
+            joinColumns = @JoinColumn(name = "id_user"),
+            inverseJoinColumns = @JoinColumn(name = "id_organisation"))
+    List<Organisation> donatedToOrganisations;
+
     public Donor(LocalDate dateCreated, String name, String email,
                  String password, String telephone, Boolean fromOrganisation,
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Food.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Food.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Food.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -5,4 +5,6 @@
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
+
+import java.util.List;
 
 @Data
@@ -26,4 +28,10 @@
     private FoodType type;
 
+    @ManyToMany
+    @JoinTable(name = "pet_preferably_eats_food",
+            joinColumns = @JoinColumn(name = "id_food"),
+            inverseJoinColumns = @JoinColumn(name = "id_pet"))
+    List<Pet> pets;
+
     public Food(String manufacturer, String name, FoodType type) {
         this.manufacturer = manufacturer;
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Organisation.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Organisation.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Organisation.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -4,4 +4,6 @@
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
+
+import java.util.List;
 
 @Data
@@ -25,4 +27,10 @@
     private String billingInformation;
 
+    @ManyToMany
+    @JoinTable(name = "donor_donates_to_organisation",
+            joinColumns = @JoinColumn(name = "id_organisation"),
+            inverseJoinColumns = @JoinColumn(name = "id_user"))
+    List<Donor> donors;
+
     public Organisation(String name, String email, String billingInformation) {
         this.name = name;
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Pet.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Pet.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Pet.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -8,4 +8,6 @@
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
+
+import java.util.List;
 
 @Data
@@ -52,4 +54,28 @@
     private Shelter shelter;
 
+    @ManyToMany
+    @JoinTable(name = "pet_belongs_to_category",
+            joinColumns = @JoinColumn(name = "id_pet"),
+            inverseJoinColumns = @JoinColumn(name = "id_category"))
+    List<Category> categories;
+
+    @ManyToMany
+    @JoinTable(name = "pet_needs_intervention_in_vet_clinic",
+            joinColumns = @JoinColumn(name = "id_pet"),
+            inverseJoinColumns = @JoinColumn(name = "id_vet_clinic"))
+    List<VetClinic> vetClinicsTreatedIn;
+
+    @ManyToMany
+    @JoinTable(name = "pet_needs_therapy",
+            joinColumns = @JoinColumn(name = "id_pet"),
+            inverseJoinColumns = @JoinColumn(name = "id_therapy"))
+    List<Therapy> therapies;
+
+    @ManyToMany
+    @JoinTable(name = "pet_preferably_eats_food",
+            joinColumns = @JoinColumn(name = "id_pet"),
+            inverseJoinColumns = @JoinColumn(name = "id_food"))
+    List<Food> preferredFoods;
+
     public Pet(String imageUrl, AgeGroup ageGroup, Size size, String breed,
                String name, Species species, Gender gender, Boolean canBeFostered,
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Therapy.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Therapy.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/Therapy.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -7,4 +7,5 @@
 import java.time.LocalDate;
 import java.util.Date;
+import java.util.List;
 
 @Data
@@ -28,4 +29,10 @@
     private LocalDate endDate;
 
+    @ManyToMany
+    @JoinTable(name = "pet_needs_therapy",
+            joinColumns = @JoinColumn(name = "id_therapy"),
+            inverseJoinColumns = @JoinColumn(name = "id_pet"))
+    List<Pet> pets;
+
     public Therapy(String healthProblem, LocalDate startDate, LocalDate endDate) {
         this.healthProblem = healthProblem;
Index: Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/VetClinic.java
===================================================================
--- Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/VetClinic.java	(revision d1fe9c257f5ce15c2bb2529a3b5a0343033fa764)
+++ Prototype Application/Paw5/src/main/java/finki/paw5/model/entities/VetClinic.java	(revision c03e53b11c30be4154c0b49b97b7f14a38e15ba5)
@@ -4,4 +4,6 @@
 import lombok.Data;
 import lombok.RequiredArgsConstructor;
+
+import java.util.List;
 
 @Data
@@ -25,4 +27,10 @@
     private String name;
 
+    @ManyToMany
+    @JoinTable(name = "pet_needs_intervention_in_vet_clinic",
+            joinColumns = @JoinColumn(name = "id_vet_clinic"),
+            inverseJoinColumns = @JoinColumn(name = "id_pet"))
+    List<Pet> pets;
+
     public VetClinic(String telephone, String address, String name) {
         this.telephone = telephone;
