데이터베이스를 쿼리하는 인라인 메소드의 목표 유형: Bean

하나 이상의 Bean에 쿼리 결과를 저장할 수 있습니다.

SELECT문의 선택 목록에 둘 이상의 컬럼 또는 표현식이 표시되는 경우, 선택된 컬럼이 임의의 기존 Bean 클래스로 자연 변환되지 않는 경우도 있지만 자연 변환되는 경우가 자주 있습니다. 많은 애플리케이션에서 SELECT문의 선택 목록은 정확히 기존 Bean 클래스의 인스턴스를 채우기(전체 또는 부분) 위해 필요한 데이터에 액세스합니다.

예제

예를 들어, 다음 SELECT문의 선택 목록은 Bean 클래스 com.company.Employee의 인스턴스를 완전히 채우는 데 필요한 데이터를 제공합니다.

SELECT EMPNO, FIRSTNME, MIDINIT, LASTNAME, WORKDEPT, PHONENO, HIREDATE FROM HRDept.Employee

Bean은 다음과 같은 정의를 사용합니다.

public Employee { 
  @Column(name="EMPNO")  
  public String employeeId; 
  @Column(name="FIRSTNME")  
  public String firstName; 
  @Column(name="MIDINIT")  
  public String middleInitial; 
  public String lastName; 
  @Column(name="WORKDEPT")  
  public String departmentId; 
  @Column(name="PHONENO")  
  public String extension; 
  public Date hireDate;   
}

목표 클래스의 @Column 어노테이션은 선택 목록의 컬럼을 각각의 특성와 연관시키는 데 필요한 정보를 제공합니다. lastName 또는 hireDate 특성은 HRDept.Employee 테이블에 있는 각각의 컬럼 레이블 이름과 일치하므로 @Column 어노테이션이 지정되지 않습니다.


피드백