JdbcMapper/test/src/main/java/com/moparisthebest/jdbc/codegen/AbstractDao.java

29 lines
953 B
Java

package com.moparisthebest.jdbc.codegen;
import com.moparisthebest.jdbc.dto.FieldPerson;
import com.moparisthebest.jdbc.dto.Person;
import java.sql.SQLException;
@JdbcMapper.Mapper(
// databaseType = JdbcMapper.DatabaseType.ORACLE
cachePreparedStatements = JdbcMapper.OptionalBool.FALSE
// , sqlParser = SimpleSQLParser.class
, allowReflection = JdbcMapper.OptionalBool.TRUE
)
public abstract class AbstractDao {
@JdbcMapper.SQL(value = "SELECT person_no, first_name, last_name, birth_date FROM person WHERE person_no = {personNo}")
abstract FieldPerson getPerson(long personNo) throws SQLException;
@JdbcMapper.SQL("SELECT person_no FROM person WHERE last_name = {lastName}")
abstract long getPersonNo(String lastName) throws SQLException;
//IFJAVA8_START
@JdbcMapper.RunInTransaction
//IFJAVA8_END
protected Person getPersonInTransaction(final String lastName) throws SQLException {
return getPerson(getPersonNo(lastName));
}
}