|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 必須 | オプション | 詳細: 要素 | |||||||||
@Target(value={PARAMETER,METHOD})
@Retention(value=RUNTIME)
public @interface Orderbyこの注釈は二つの用途で使われます.
DAOのメソッドに注釈された場合,この注釈は注釈されたメソッドによるJPQL問い合わせのORDER BY句を指定します.
interface EmpDao {
@Orderby("e.salary DESC, e.name ASC")
List findEmpOrderbySalary();
...
}
DAOのメソッド引数またはDTOプロパティのgetterメソッドに注釈された場合は,メソッド引数またはDTOのプロパティがORDER
BY句に含まれることを指定します. デフォルトでは,メソッド引数またはDTOプロパティの名前がorderbyであれば注釈する必要はありません.
ORDER BY句を指定するメソッド引数またはDTOプロパティ名がorderby以外の場合にこの注釈を使用します.
DAOメソッドにこの注釈が付けられ,メソッド引数またはDTOのプロパティでもORDER BYが指定された場合は,DAOメソッドの注釈で指定されたorder_by_specの後ろにメソッド引数またはDTOプロパティで指定されたorder_by_specが続くJPQLが生成されます.
interface EmpDao {
@Orderby("e.salary DESC")
List findEmpOrderbySalary(OrderbySpec... orderby);
...
}
dao.findEmpOrderbySalary(new OrderbySpec("name", OrderingSpec.ASC));
SELECT e FROM Emp e ... ORDER BY e.salary DESC, e.name ASC
| 任意要素の概要 | |
|---|---|
String |
value
ORDER BY句に含めるorder_by_spec (DAOメソッドに注釈する場合のみ) |
public abstract String value
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 必須 | オプション | 詳細: 要素 | |||||||||