public void findObj2() {
   EntityManager em = emf.createEntityManager();
   Employee2 e = em.find(Employee2.class, new EmployeeId2("f_1", "l_1"));
   List<Dependent2> ds = e.getDependents();
   assertEquals(numDependentsPerEmployee, ds.size());
   Employee2 e0 = emps2.get(1);
   assertEquals(e0, e);
   em.close();
 }
 public Employee2 createEmployee2(EntityManager em, int id) {
   Employee2 e = new Employee2();
   e.setEmpId(new EmployeeId2("f_" + id, "l_" + id));
   for (int i = 0; i < numDependentsPerEmployee; i++) {
     Dependent2 d = createDependent2(em, dId2++, e);
     e.addDependent(d);
     em.persist(d);
   }
   em.persist(e);
   emps2.put(id, e);
   return e;
 }
  public void testCountDistinctMultiCols() {
    EntityManager em = emf.createEntityManager();

    Employee2 emp1 = new Employee2();
    EmployeeId2 empId1 = new EmployeeId2();
    empId1.setFirstName("James");
    empId1.setLastName("Bond");
    emp1.setEmpId(empId1);

    Employee2 emp2 = new Employee2();
    EmployeeId2 empId2 = new EmployeeId2();
    empId2.setFirstName("James");
    empId2.setLastName("Obama");
    emp2.setEmpId(empId2);

    Dependent2 dep1 = new Dependent2();
    DependentId2 depId1 = new DependentId2();
    depId1.setEmpPK(empId1);
    depId1.setName("Alan");
    dep1.setId(depId1);

    Dependent2 dep2 = new Dependent2();
    DependentId2 depId2 = new DependentId2();
    depId2.setEmpPK(empId2);
    depId2.setName("Darren");
    dep2.setId(depId2);

    em.persist(emp1);
    em.persist(emp2);
    em.persist(dep1);
    em.persist(dep2);

    em.getTransaction().begin();
    em.flush();
    em.getTransaction().commit();

    String[] jpqls = {
      "SELECT COUNT (DISTINCT d2.emp) FROM Dependent2 d2",
      "select count (DISTINCT d2) from Dependent2 d2",
    };

    for (int i = 0; i < jpqls.length; i++) {
      Query q = em.createQuery(jpqls[i]);
      Long o = (Long) q.getSingleResult();
      int count = (int) o.longValue();
      assertEquals(2, count);
    }
    em.close();
  }
Exemple #4
0
  public static void main(String[] args) {

    Employee2 emp = new Employee2();
    emp.fName = "John";
    emp.lName = "Smith";
    emp.salary = 50000;
    emp.address = "12 main street";
    emp.hireDate = new Date();
    emp.id = 123;

    try (FileOutputStream fOut =
            new FileOutputStream("src/lesson15/serialization/files/NewEmployee2.ser");
        ObjectOutputStream oOut = new ObjectOutputStream(fOut)) {

      emp.writeExternal(oOut); // serializing employee

      System.out.println("An employee is externalized into NewEmployee2.ser");

    } catch (IOException e) {
      e.printStackTrace();
    }
  }