SQLファイルを使う
やろうとしていることは外部SQLファイルを使うまでもなくJdbcManagerのAPIを使えばできるんだけど、何事も勉強ということで試してみた。
パラメータは1つなので、あえてDTOでわたすのもアレだなと思っていたら、
SQLファイルのパラメータが1つの場合は、 selectBySqlFile() の3番目の引数で値を直接指定します。
List
Seasar2 - S2JDBC - JdbcManager - SQLファイルによる操作results = jdbcManager.selectBySqlFile(
EmployeeDto.class, "examples/sql/employee/selectAll.sql", 10)
.getResultList();
とある。が、SQLファイルでどう指定したらいいかどこにも書いていない(多分)
org.seasar.extension.jdbc.query.SqlFileSelectImplクラスprepareParameterメソッドのソースを読んでみたら、"$1"とあった。
select * from tbl where col = /*$1*/'hoge';
という感じで解決。