JPAは基本的なCRUDは標準で使え(データマッパーパターンなので当たり前)、定型的なクエリはNamedQueryとしてあらかじめ静的に設定しておくことができる。 しかし、完全に静的ではなく、起動時に少しいじりたいなどほんの少し動的な性的静的なクエリを作りたいこともあるはずだ。 というわけで、2.1ではNamedQueryをコードで作れるようになった。 定義 EntityManager em = emf.createEntityManager(); String sql = "select address , count(*) as count from customer group by address"; Query q = em.createNativeQuery(sql,"address_count"); em.getEntityManagerFactory().addNamedQ