В настоящее время мой метод репозитория выглядит так:
Код: Выделить всё
public interface WordRepository extends JpaRepository
{
@Query(value = "SELECT MAX(wordNumber) FROM Word WHERE languageId = :languageId")
Optional getHighestId(@Param("languageId") Long languageId);
}
Код: Выделить всё
@Data
@Entity
@IdClass(Word.WordId.class)
@Table(name = "WORD")
public class Word
{
@Id
private Long languageId;
@Id
private Long wordNumber;
private String letters;
@AllArgsConstructor
public class WordId implements Serializable
{
public Long languageId;
public Long wordNumber;
@Override
public boolean equals(Object o)
{
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
WordId wordId = (WordId) o;
return Objects.equals(languageId, wordId.languageId) && Objects.equals(wordNumber, wordId.wordNumber);
}
@Override
public int hashCode()
{
return Objects.hash(languageId, wordNumber);
}
}
}
Код: Выделить всё
select max(w1_0.word_number) from word w1_0 where w1_0.language_id=?
Код: Выделить всё
org.hibernate.InstantiationException: Unable to locate constructor for embeddable 'io.fi0x.languagegenerator.db.entities.Word$WordId'
Подробнее здесь: https://stackoverflow.com/questions/787 ... -condition