Beispiel #1
0
  @Test
  public void testInsertOptimized() {
    SqlQueryEngine sqlEngine = getQueryEngine("CRUD_PERSON_SELECT");

    List<Person> list = sqlEngine.query(session, Person.class);
    assertEquals(2, list.size());

    Person p = new Person();
    p.setId(3L);
    p.setSsn(new Ssn());
    p.getSsn().setNumber("345678");
    p.getSsn().setCountry(Country.UNITED_STATES);
    p.setName(new PersonName());
    p.getName().setFirst("Toby");
    p.getName().setLast("Stephens");
    p.setAge(1969, 4, 21);
    p.setSex(Gender.MALE);
    p.setCreatedDate(new Date());
    p.setCreatedBy("wlado");
    p.setVersion(1L);
    p.setClothesSize(Size.MIDDLE);

    SqlCrudEngine crudEngine = getCrudEngine("INSERT_PERSON_OPT");

    String sql = crudEngine.getInsertSql(p, null);
    logger.info(sql);

    int count = crudEngine.insert(session, p);
    assertEquals(1, count);
    logger.info("new id: " + p.getId());
    assertNotNull(p.getId());

    list = sqlEngine.query(session, Person.class);
    assertEquals(3, list.size());
  }
Beispiel #2
0
  @Test
  public void testInsertEmpty() {
    if ("oracle".equalsIgnoreCase(dbType)) return;

    SqlQueryEngine sqlEngine = getQueryEngine("CRUD_PERSON_SELECT");

    List<Person> list = sqlEngine.query(session, Person.class);
    assertEquals(2, list.size());

    Person p = new Person();
    p.setId(3L);
    p.setSsn(new Ssn());
    p.getSsn().setNumber("");
    p.getSsn().setCountry(Country.UNITED_STATES);
    p.setName(new PersonName());
    p.getName().setFirst("");
    p.getName().setLast("Stephens");
    p.setAge(1969, 4, 21);
    p.setSex(Gender.MALE);
    p.setCreatedDate(new Date());
    p.setCreatedBy("wlado");
    p.setVersion(1L);
    p.setClothesSize(Size.MIDDLE);

    SqlCrudEngine crudEngine = getCrudEngine("INSERT_PERSON");

    String sql = crudEngine.getInsertSql(p, null);
    logger.info(sql);

    int count = crudEngine.insert(session, p);
    assertEquals(1, count);
    logger.info("new id: " + p.getId());
    assertNotNull(p.getId());

    Person p2 = new Person();
    p2.setId(p.getId());
    list = sqlEngine.query(session, Person.class, p2);
    assertEquals(1, list.size());
    Person p3 = list.get(0);
    assertEquals("", p3.getName().getFirst());
    assertEquals("Stephens", p3.getName().getLast());
  }
Beispiel #3
0
  @Test
  public void testUpdate1() {
    SqlQueryEngine sqlEngine = getQueryEngine("CRUD_PERSON_SELECT");

    Person p = new Person();
    p.setId(2L);

    List<Person> list = sqlEngine.query(session, Person.class, p);
    assertEquals(1, list.size());
    assertEquals("Halle", list.get(0).getName().getFirst());
    assertNotSame(null, list.get(0).getCreatedDate());

    p.setName(new PersonName());
    p.getName().setFirst("Toby");
    p.setCreatedDate(null);

    SqlCrudEngine crudEngine = getCrudEngine("UPDATE_PERSON");

    String sql = crudEngine.getUpdateSql(p, null);
    logger.info(sql);
    assertContains(sql, "update PERSON");
    assertContains(sql, "SET");
    assertContains(sql, "NAME_FIRST = :name_first", "NAME_FIRST = ?");
    assertContains(sql, "CREATEDDATE = :createdDate", "CREATEDDATE = ?");
    assertContains(sql, "WHERE");
    assertContains(sql, "ID = :id", "ID = ?");

    int count = crudEngine.update(session, p);
    assertEquals(1, count);

    list = sqlEngine.query(session, Person.class, p);
    assertEquals(1, list.size());
    assertEquals("Toby", list.get(0).getName().getFirst());
    if ("MYSQL".equalsIgnoreCase(dbType)) assertNotNull(list.get(0).getCreatedDate());
    else assertEquals(null, list.get(0).getCreatedDate());
  }