[seasar-s2dao-dev:536] Re: @SqlFile にファイルのパスを指定する仕組み

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2007年 10月 31日 (水) 10:02:33 JST


中村(taedium)です。

> getAllEmployees_SQLFILE        = "employee/getAllEmployees.sql";
> getAllEmployees_oracle_SQLFILE = "employee/getAllEmployees_oracle.sql";
> getAllEmployees_db2_SQLFILE    = "employee/getAllEmployees_db2.sql";
> getAllEmployees_mssql_SQLFILE  = "employee/getAllEmployees_mssql.sql";
> 
> ということでしょうか? マジで?
> 
> SQL アノテーションや ID アノテーションは,
> RDBMS ごとに固有の付加情報 (SQL 等) をその
> アノテーション自体で指定できる必要がありますが,
> SQLFILE アノテーションはそうではないと思います.

うーん、確かに。
SQL アノテーションでRDBMSが指定できるなら
SQLFILE アノテーションでも指定できて当然と
考えてしまいましたが、別物と考えたほうがよさそう。

すでにsqlファイル名からRDBMSごとに使用すべきファイルを
判別するルールがあるので、SQLFILE アノテーションでも
そのルールに従うのがわかりやすいですね。

ということで、前言を撤回して、

SQLFILE アノテーションにRDBMSを指定するのではなく、
String getAllEmployees_SQLFILE = "aaa/bbb/ccc.sql"
と書いておけば、aaa/bbb/ccc_oracle.sqlにもマッピングする
という方法に賛成します。
-- 
Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>



seasar-s2dao-dev メーリングリストの案内