S2JDBCのSQLファイルで「in句」を使用する場合のメモ

SQLファイルでパラメータに置換されるコメント/*パラメータ名*/の直後に、括弧付きのサンプルパラメータを設定することがポイントです。

Java

String[] params= {"val1","val2"};

Map<String, Object> mapParams = new HashMap<String, Object>();
mapParams.put("paramList", params);

List<SampleDto> resultList = jdbcManager.selectBySqlFile(SampleDto.class, "/sql/sample_in_phrase.sql",mapParams).getResultList();

SQLファイル側(sample_in_phrase.sql)

select *
from   sampleTbl
where  sampleCol in /*paramList*/('123')      -- ←ポイント


実行されるSQL

select *
from   sampleTbl
where  sampleCol in ('val1', 'val2')


お勧め書籍