Может ли JPA возвращать результаты в виде карты?

В настоящее время мы создаем карту вручную на основе двух полей, возвращаемых именованным запросом, поскольку JPA предоставляет только getResultList ().

@NamedQuery{name="myQuery",query="select c.name, c.number from Client c"}

HashMap<Long,String> myMap = new HashMap<Long,String>();

for(Client c: em.createNamedQuery("myQuery").getResultList() ){
     myMap.put(c.getNumber, c.getName);
}

Но я чувствую, что настраиваемый картограф или аналогичный был бы более производительным, поскольку этот список может легко содержать 30 000+ результатов.

Любые идеи по созданию карты без повторения вручную.

(Я использую OpenJPA, а не спящий режим)

32
задан Eddie 6 December 2010 в 22:10
поделиться