Я даже не уверен, что это возможно, но я решил, что стоит спросить. Я давно использую нативный запрос для этого.
Скажите, у меня есть этот запрос.
public static List<PkgLoad> findBetweenDatesWrapSpec( PkgLine pkgLine, WrapSpec wrapSpec, Date startDate, Date endDate, boolean metric ) {
CriteriaBuilder builder = JPA.local.get().em().getCriteriaBuilder();
CriteriaQuery cq = builder.createQuery( PkgLoad.class );
Root<PkgLoad> pkgLoad = cq.from( PkgLoad.class );
Predicate pkgLineQuery = builder.equal( pkgLoad.get( "pkgLineId" ), pkgLine );
Predicate wrapQuery = builder.equal( pkgLoad.get( "wrapSpecId" ), wrapSpec );
Predicate dateQuery = builder.between( pkgLoad.get( "timeStamp" ).as( Date.class ), startDate, endDate );
cq.where( builder.and( pkgLineQuery, wrapQuery, dateQuery ) );
cq.orderBy( builder.desc( pkgLoad.get( "timeStamp" ) ) );
Query query = JPA.local.get().em().createQuery( cq );
return query.getResultList();
}
У меня есть столбец, называемый унциями в модели. Что делать, если я хочу преобразовать унции в метрику в зависимости от свойства. Теперь это свойство зависит от имени пользователя, поэтому переопределение метода get не является опцией. Если я переопределяю метод get, он портит остальную часть приложения. Просто хотел узнать какие-либо варианты для этого. Спасибо.