Skip to content
Snippets Groups Projects
Commit ae62ff10 authored by Jan Kožusznik's avatar Jan Kožusznik
Browse files

Add tasks

parent ea99b2c8
No related merge requests found
......@@ -107,6 +107,15 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.version}</version>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
......
package koz01.java2.lab10;
import java.io.Serializable;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import lombok.EqualsAndHashCode;
import lombok.Getter;
@MappedSuperclass
@EqualsAndHashCode
public class BaseEntity implements Serializable {
@Getter
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
}
package koz01.java2.lab10;
import java.util.Set;
import javax.persistence.Entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Entity
@AllArgsConstructor
@NoArgsConstructor
public class Clas extends BaseEntity {
@Getter
@Setter
private String cname;
@Getter
@Setter
private Set<Clas> clas;
}
package koz01.java2.lab10;
import java.util.List;
import javax.persistence.Entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Entity
@AllArgsConstructor
@NoArgsConstructor
public class Department extends BaseEntity {
@Getter
@Setter
private String name;
@Getter
@Setter
private List<Employee> employee;
}
package koz01.java2.lab10;
import javax.persistence.Entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Entity
@AllArgsConstructor
@NoArgsConstructor
public class Employee extends BaseEntity {
@Getter
@Setter
private int eid;
@Getter
@Setter
private String ename;
@Getter
@Setter
private double salary;
@Getter
@Setter
private String deg;
@Setter
@Getter
private Department department;
}
......@@ -2,16 +2,16 @@ package koz01.java2.lab10;
import javax.persistence.Entity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Data
@EqualsAndHashCode(callSuper = true)
@Entity
@NoArgsConstructor
public class NonTeachingStaff extends Staff {
@Getter
@Setter
private String areaexpertise;
public NonTeachingStaff(String sname, String areaexpertise) {
......
package koz01.java2.lab10;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import lombok.Data;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Data
@Entity
@NoArgsConstructor
public class Staff implements Serializable {
public class Staff extends BaseEntity {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
@Getter
@Setter
private String sname;
public Staff(String sname) {
......
package koz01.java2.lab10;
import java.util.Set;
import javax.persistence.Entity;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Entity
@AllArgsConstructor
@NoArgsConstructor
public class Teacher extends BaseEntity {
@Getter
@Setter
private String tname;
@Getter
@Setter
private String subject;
@Getter
@Setter
private Set<Clas> clasSet;
}
......@@ -2,17 +2,20 @@ package koz01.java2.lab10;
import javax.persistence.Entity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Data
@EqualsAndHashCode(callSuper = true)
@Entity
@NoArgsConstructor
public class TeachingStaff extends Staff {
@Getter
@Setter
private String qualification;
@Getter
@Setter
private String subjectexpertise;
public TeachingStaff(String sname, String qualification,
......
package koz01.java2.lab10;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
......@@ -33,4 +38,150 @@ public class DemoJPA {
entitymanager.close();
emfactory.close();
}
@Test
public void demostrateManyToOne() {
EntityManagerFactory emfactory = Persistence.createEntityManagerFactory(
"Eclipselink_JPA");
EntityManager entitymanager = emfactory.createEntityManager();
entitymanager.getTransaction().begin();
// Create Department Entity
Department department = new Department();
department.setName("Development");
// Store Department
entitymanager.persist(department);
// Create Employee1 Entity
Employee employee1 = new Employee();
employee1.setEname("Satish");
employee1.setSalary(45000.0);
employee1.setDeg("Technical Writer");
employee1.setDepartment(department);
// Create Employee2 Entity
Employee employee2 = new Employee();
employee2.setEname("Krishna");
employee2.setSalary(45000.0);
employee2.setDeg("Technical Writer");
employee2.setDepartment(department);
// Create Employee3 Entity
Employee employee3 = new Employee();
employee3.setEname("Masthanvali");
employee3.setSalary(50000.0);
employee3.setDeg("Technical Writer");
employee3.setDepartment(department);
// Store Employees
entitymanager.persist(employee1);
entitymanager.persist(employee2);
entitymanager.persist(employee3);
entitymanager.getTransaction().commit();
entitymanager.close();
emfactory.close();
}
@Test
public void demostrateOneToMany() {
EntityManagerFactory emfactory = Persistence.createEntityManagerFactory(
"Eclipselink_JPA");
EntityManager entitymanager = emfactory.createEntityManager();
entitymanager.getTransaction().begin();
// Create Employee1 Entity
Employee employee1 = new Employee();
employee1.setEname("Satish");
employee1.setSalary(45000.0);
employee1.setDeg("Technical Writer");
// Create Employee2 Entity
Employee employee2 = new Employee();
employee2.setEname("Krishna");
employee2.setSalary(45000.0);
employee2.setDeg("Technical Writer");
// Create Employee3 Entity
Employee employee3 = new Employee();
employee3.setEname("Masthanvali");
employee3.setSalary(50000.0);
employee3.setDeg("Technical Writer");
// Store Employee
entitymanager.persist(employee1);
entitymanager.persist(employee2);
entitymanager.persist(employee3);
// Create Employeelist
List<Employee> emplist = new ArrayList<>();
emplist.add(employee1);
emplist.add(employee2);
emplist.add(employee3);
// Create Department Entity
Department department = new Department();
department.setName("Development");
department.setEmployee(emplist);
// Store Department
entitymanager.persist(department);
entitymanager.getTransaction().commit();
entitymanager.close();
emfactory.close();
}
@Test
public void demostrateManyToMany() {
{
EntityManagerFactory emfactory = Persistence.createEntityManagerFactory(
"Eclipselink_JPA");
EntityManager entitymanager = emfactory.createEntityManager();
entitymanager.getTransaction().begin();
// Create Clas Entity
Clas clas1 = new Clas("1st", null);
Clas clas2 = new Clas("2nd", null);
Clas clas3 = new Clas("3rd", null);
// Store Clas
entitymanager.persist(clas1);
entitymanager.persist(clas2);
entitymanager.persist(clas3);
// Create Clas Set1
Set<Clas> classSet1 = new HashSet<>();
classSet1.add(clas1);
classSet1.add(clas2);
classSet1.add(clas3);
// Create Clas Set2
Set<Clas> classSet2 = new HashSet<>();
classSet2.add(clas3);
classSet2.add(clas1);
classSet2.add(clas2);
// Create Clas Set3
Set<Clas> classSet3 = new HashSet<>();
classSet3.add(clas2);
classSet3.add(clas3);
classSet3.add(clas1);
// Create Teacher Entity
Teacher teacher1 = new Teacher("Satish", "Java", classSet1);
Teacher teacher2 = new Teacher("Krishna", "Adv Java", classSet2);
Teacher teacher3 = new Teacher("Masthanvali", "DB2", classSet3);
// Store Teacher
entitymanager.persist(teacher1);
entitymanager.persist(teacher2);
entitymanager.persist(teacher3);
entitymanager.getTransaction().commit();
entitymanager.close();
emfactory.close();
}
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment