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(); }
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(); } }