에 대한 DB에서 특정 colums을 PIN이 어떻게 내 웹 페이지 나 활성 주제의 이름 목록을 표시해야합니다 열 기본 쿼리 - 내 DB에서 엔티티
id (long)
name (String)
ifActive (0 or 1)
text (very long String)
있는 테이블 제목 본당.
<sql-result-set-mapping name="SubjectResult">
<entity-result entity-class="com.test.Subject">
<field-result name="id" column="id"/>
<field-result name="name" column="name"/>
<field-result name="ifActive" column="ifActive"/>
<field-result name="text" column="text"/>
</entity-result>
</sql-result-set-mapping>
<entity class= "com.test.Subject" name= "Subject">
<named-native-query name="findAllActiveSubject"
result-set-mapping="SubjectResult">
<query>
select
*
from
Subject
where
ifActive = 1
</query>
</named-native-query>
</entity>
을 그리고 그것을 잘 작동합니다 - 나는 주제 객체의 목록을 나는 활성 주제의 이름 목록을 형성 할 수있다 : 그래서 XML 파일에 다음과 같은 기본 쿼리를 선언합니다. 그러나 이것은 문제입니다. 텍스트 열의 텍스트가 너무 길어서 실제로 활성 주제 제목 목록을 만들기 위해 DB에서 다시 검색 할 필요가 없습니다. 주제 제목 만 필요합니다.
그래서 내가 다음에 SQL 쿼리를 변경합니다
<sql-result-set-mapping name="SubjectResult">
<entity-result entity-class="com.test.Subject">
<field-result name="id" column="id"/>
<field-result name="name" column="name"/>
<field-result name="ifActive" column="ifActive"/>
<field-result name="text" column="text"/>
</entity-result>
</sql-result-set-mapping>
<entity class= "com.test.Subject" name= "Subject">
<named-native-query name="findAllActiveSubject"
result-set-mapping="SubjectResult">
<query>
select
name
from
Subject
where
ifActive = 1
</query>
</named-native-query>
</entity>
내가 할
com.microsoft.sqlserver.jdbc.SQLServerException: The column name id is not valid
그래서 내가 다음에 결과 집합 변경하려고 근본 원인과 예외
org.hibernate.exception.GenericJDBCException: could not execute query
:
<sql-result-set-mapping name="SubjectResult">
<entity-result entity-class="com.test.Subject">
<field-result name="name" column="name"/>
</entity-result>
</sql-result-set-mapping>
<entity class= "com.test.Subject" name= "Subject">
<named-native-query name="findAllActiveSubject"
result-set-mapping="SubjectResult">
<query>
select
name
from
Subject
where
ifActive = 1
</query>
</named-native-query>
</entity>
그리고 나는 아주 이상한 근본 원인
com.microsoft.sqlserver.jdbc.SQLServerException: The column name id1_5_0_ is not valid
그래서 ..와 예외
org.hibernate.exception.GenericJDBCException: could not execute query
얻을
내가 DB에서 colums의 몇 가지를 가져 오지 수 없으며 형태 주제 만 그들과 함께? Subject의 나머지 속성이 null이더라도 괜찮습니다. Subject 또는 Value 목록이나 그와 같은 배열 목록이 아닌 정확한 작업을 원합니다.