[SPRING] 스프링 데이터 jpa : 결과 튜플에서 별칭을 찾을 수 없습니다! 쿼리가 별칭을 정의하는지 확인하십시오.
SPRING스프링 데이터 jpa : 결과 튜플에서 별칭을 찾을 수 없습니다! 쿼리가 별칭을 정의하는지 확인하십시오.
"org.springframework.dao.InvalidDataAccessApiUsageException : 결과 튜플에 별명이 없습니다! 쿼리가 별칭을 정의하는지 확인하십시오 !; 중첩 예외는 java.lang.IllegalStateException : 별칭을 찾을 수 없습니다. 결과 튜플! 쿼리가 별칭을 정의하는지 확인하십시오! "
저장소:
@Repository
public interface UserRelationshipRepository
extends JpaRepository<UserRelationship, Long>, QueryDslPredicateExecutor<UserRelationship> {
@Query(value = "SELECT ur.id.toUser FROM UserRelationship ur WHERE ur.fromUser = :fromUser AND ur.relationshipTypeId = 1")
Set<User> findUserFriends(@Param("fromUser") User fromUser);
}
개체 :
@Entity
@NamedEntityGraph(name = "graph.User", attributeNodes = {})
@Table(name = "users")
public class User extends BaseEntity implements UserDetails {
private static final long serialVersionUID = 8884184875433252086L;
@Id
@SequenceGenerator(name = "users_id_seq", sequenceName = "users_id_seq", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "users_id_seq")
private Long id;
@Column(name = "first_name")
private String firstName;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "fromUser", cascade = CascadeType.ALL)
private Set<UserRelationship> relationships = new HashSet<UserRelationship>();
// getters setters
}
@Entity
@NamedEntityGraph(name = "graph.UserRelationship", attributeNodes = {})
@Table(name = "users_relationships")
public class UserRelationship extends BaseEntity implements Serializable {
private static final long serialVersionUID = -6367981399229734837L;
@EmbeddedId
private final UserRelationshipId id = new UserRelationshipId();
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "from_user_id", nullable = false)
@MapsId("fromUserId") // maps fromUserId attribute of the embedded id
private User fromUser;
@Column(name = "relationship_type_id")
private Long relationshipTypeId;
}
스프링 데이터 jpa의 '1.11.0.BUILD-SNAPSHOT'버전을 사용하고 있습니다. 이것은 이미 알려진 문제이며 해결 된 것으로 표시되어 있지만 아직 이해할 수 있습니다.
제발 도와주세요.
최신 정보: 저장소 메소드의 리턴 유형을 Set
해결법
-
==============================
1.이미 고정되어 있으며 스프링 데이터 호퍼 SR2 릴리스의 일부가 될 DATAJPA-885를 실행 중입니다.
이미 고정되어 있으며 스프링 데이터 호퍼 SR2 릴리스의 일부가 될 DATAJPA-885를 실행 중입니다.
from https://stackoverflow.com/questions/37658619/spring-data-jpa-no-aliases-found-in-result-tuple-make-sure-your-query-defines by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring JDBC는 log4j로 SQL을 로깅하지 않습니다. (0) | 2019.01.24 |
---|---|
[SPRING] 스프링 오버로드 된 생성자 삽입 (0) | 2019.01.24 |
[SPRING] Java에서 yaml로부터 맵 읽기 (0) | 2019.01.23 |
[SPRING] Transfer-Encoding 제거 : POST 요청에 청크가 있습니까? (0) | 2019.01.23 |
[SPRING] 속성 파일에서 값을 가져 와서 주석에 사용하는 방법? (0) | 2019.01.23 |