반응형
최대 절전 모드를 사용하여 열을 선택하는 방법은 무엇입니까?
Hibernate를 사용하여 전체 객체가 아닌 하나의 열을 선택하고자 합니다.지금까지 이것을 가지고 있습니다.
List<String> firstname = null;
firstname = getSession().createCriteria(People.class).list();
제 문제는 위 코드가 단지 "이름"이 아닌 전체 피플 테이블을 객체로 반환한다는 것입니다.전체 개체 대신 "이름"만 반환하도록 지정하는 방법을 잘 모르겠습니다.
Projection은 다음과 같이 설정할 수 있습니다.
.setProjection(Projections.property("firstname"))
이것으로 답례로 이름만 얻을 수 있습니다.
동일한 시나리오로 스택에서 다른 링크를 찾았습니다.이것이 동면 기준을 사용하여 전체 개체 대신 개체의 한 요소만 반환하는 방법에도 도움이 되기를 바랍니다.
두 개 이상의 열을 쿼리하고 쿼리에서 값을 가져와야 하는 경우 다음과 같은 방법이 있습니다.
....
crit.setProjection(Projections.property("firstname"));
crit.setProjection(Projections.property("lastname"));
List result = crit.list();
...
for (Iterator it = result.iterator(); it.hasNext(); ) {
Object[] myResult = (Object[]) it.next();
String firstname = (String) myResult[0];
String lastname = (String) myResult[1];
....
}
ProjectionList(프로젝션 리스트)를 사용하면 조건 베이스 프로젝션을 원할 경우 예를 들어
ProjectionList prjection = Projections.projectionList();
if(abc){
prjection.add(Projections.property("firstname"));
}
else if(xyz){
prjection.add(Projections.property("lastname"));
}
........
criteria.setProjection(prjection);
언급URL : https://stackoverflow.com/questions/10652358/how-do-you-select-a-column-using-hibernate
반응형
'programing' 카테고리의 다른 글
셸 스크립트로 MariaDB 설치를 자동화하려면 어떻게 해야 합니까? (0) | 2023.10.09 |
---|---|
mysql 커뮤니티 서버 대 mysql 설치 관리자 (0) | 2023.10.09 |
의사 요소 이후 CSS:before/:fter pseudo-elements에서 이미지의 높이를 변경할 수 있습니까? (0) | 2023.10.09 |
저장 프로시저를 사용하지 않고 n번 반복 실행 (0) | 2023.10.09 |
양식을 재설정하는 가장 깨끗한 방법 (0) | 2023.10.09 |