У меня проблема с данными пружины. Метод именования JPA findAllBy ...
Это моя сущность:
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
@SequenceGenerator(name = "sequenceGenerator")
private Long id;
@Column(name = "entity_id")
private Long entityId;
@Column(name = "entity_name")
private String entityName;
@Column(name = "user_id")
private Long userId;
@Column(name = "rating")
private Double rating;
@Column(name = "like")
private Long like;
@Column(name = "dislike")
private Long dislike;
@Column(name = "review_title")
private String reviewTitle;
@Lob
@Column(name = "review_comment")
private String reviewComment;
@Column(name = "time")
private ZonedDateTime time;
@ManyToOne
private RatingType type;
с геттерами и сеттерами.
Это методвызовите ratingServiceImpl с @Autowired ratingRepository:
List<Rating> ratings = ratingRepository.findAllByEntityIdAndEntityName(entityId, entityName);
и хранилищем:
@Repository
public interface RatingRepository extends JpaRepository<Rating, Long>,
JpaSpecificationExecutor<Rating> {
List<Rating> findAllByEntityIdAndEntityName(Long entityId, String entityName);
}
Зависимость:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
<version>1.5.10.RELEASE</version>
</dependency>
Причина:
Вызвано: org.h2.jdbc.JdbcSQLException: синтаксическая ошибка в операторе SQL «ВЫБЕРИТЕ RATING0_.ID AS ID1_48_, RATING0_.DISLIKE AS DISLIKE2_48_, RATING0_.ENTITY_ID AS ENTITY_I3_48_ ENT_IT_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0_0"А.С. LIKE5_48_, RATING0_.RATING А.С. RATING6_48_, RATING0_.REVIEW_COMMENT А.С. REVIEW_C7_48_, RATING0_.REVIEW_TITLE А.С. REVIEW_T8_48_, RATING0_.TIME А.С. TIME9_48_, RATING0_.TYPE_ID А.С. TYPE_ID11_48_, RATING0_.USER_ID КАК USER_ID10_48_ паспортной RATING0_ ГДЕ RATING0_.ENTITY_ID =? И RATING0_. ENTITY_NAME =? "; ожидаемый «идентификатор» ;Оператор SQL: выберите rating0_.id в качестве id1_48_, rating0_.dislike в качестве dislike2_48_, rating0_.entity_id в качестве entity_i3_48_, rating0_.entity_name в качестве entity_n4_48_, rating0_.like в виде like5_48_, rating0_.tinging в качестве rating6_48_, rating0_re_0_0_0_0_re_0_re_0review_t8_48_, rating0_.time как time9_48_, rating0_.type_id как type_id11_48_, rating0_.user_id как user_id10_48_ из рейтинга rating0_, где rating0_.entity_id =? и рейтинг0_.entity_name =? [42001-196]
другие исключительные ситуации по этой ссылке
Спасибо за решение заранее.