0

spring roo を使用して小さな Web アプリケーションを開発しています。finder コマンドを使用して、いくつかの finder API を追加しました。Push-in で Roo を削除した後、生成されたコードはモデル クラスで次のようになります。

public static TypedQuery<Task> findTasksByAssignedTo(Employee assignedTo) {
    if (assignedTo == null) throw new IllegalArgumentException("The assignedTo argument is required");
    EntityManager em = Task.entityManager();
    TypedQuery<Task> q = em.createQuery("SELECT o FROM Task AS o WHERE o.assignedTo = :assignedTo", Task.class);
    q.setParameter("assignedTo", assignedTo);
    return q;
}

Roo が Repository インターフェースで findBy メソッドを生成しないのはなぜですか? それとも、私が気付いていないこのようなものをサポートしていますか?

4

1 に答える 1

3

デフォルトでは、Roo はActive Record パターンを使用し、DAO を使用しないためです。

アクティブ レコード パターン:

データベース テーブルまたはビューで行をラップし、データベース アクセスをカプセル化し、そのデータにドメイン ロジックを追加するオブジェクト。"

于 2013-09-13T07:47:17.533 に答える