package jodd.db.oom; import jodd.db.DbSession; import jodd.db.oom.fixtures.Status33; import jodd.db.oom.fixtures.Status33SqlType; import jodd.db.oom.fixtures.Tester3; import jodd.db.oom.fixtures.Tester33; import jodd.db.oom.sqlgen.DbEntitySql; import jodd.db.type.SqlTypeManager; import org.junit.Test; public class Kotlin399Test extends DbBaseTest { public class PostgreSql extends PostgreSqlDbAccess { @Override public String getCreateTableSql() { return "create table TESTER (" + "ID SERIAL," + "NAME varchar(20) NOT NULL," + "VALUE integer NULL," + "primary key (ID)" + ')'; } @Override public String getTableName() { return "TESTER"; } } @Test public void test399() { DbAccess db = new PostgreSql(); System.out.println("\t" + db.getClass().getSimpleName()); init(); db.initDb(); connect(); db.createTables(); SqlTypeManager.register(Tester3.Status.class, StatusSqlType.class); try { workoutJavaEntity(); workoutKotlinEntity(); } finally { db.close(); } } private void workoutJavaEntity() { DbSession session = new DbSession(); Tester3 tester = new Tester3(); tester.setName(Tester3.Status.SELECTED); tester.setValue(7); DbOomQuery dbOomQuery = DbOomQuery.query(session, DbEntitySql.insert(tester)); dbOomQuery.setGeneratedKey(); dbOomQuery.executeUpdate(); session.closeSession(); } private void workoutKotlinEntity() { SqlTypeManager.register(Status33.class, Status33SqlType.class); DbSession session = new DbSession(); Tester33 tester = new Tester33(9, Status33.SELECTED, 3); DbOomQuery dbOomQuery = DbOomQuery.query(session, DbEntitySql.insert(tester)); dbOomQuery.setGeneratedKey(); dbOomQuery.executeUpdate(); session.closeSession(); } }