我正在使用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方法?还是支持我不知道的类似东西?
最佳答案
因为默认情况下Roo使用Active Record Pattern而不使用DAO。
活动记录模式:
一个在数据库表或视图中包装一行,封装数据库访问并在该数据上添加域逻辑的对象。”