ストレージに JPA を使用し、MVC パターンに従っている Java Web アプリがあります。多くのメソッドでList<Product>
、名前で注文する必要がある を返さなければなりません。並べ替えロジックを含める方が良いのはどこですか?
このようなコントローラーメソッドでは、Query
それ自体で:
public List<Product> obtainProductList()
{
Query query = em.createQuery("SELECT g FROM Product g ORDER BY g.name");
List<Product> ret = query.getResultList();
if (ret == null)
{
return new ArrayList<>();
}
else
{
return ret;
}
}
それとも、ページ自体にデータを取得する瞬間に Manager クラスにあるのでしょうか?:
public List<Product> getProducts()
{
products = controller.obtainProductList();
//Sort the list by comparators, for example;
return this.products;
}
現在、私は最初の方法でそれをやっていますが、新しい方法を受け入れています。