Как я могу использовать метод запроса в MySQL с JPA - PullRequest
0 голосов
/ 02 апреля 2020

Я сделал 3 таблицы на сервере MySQL (с использованием SpringBoot).

вот так

как таблица

@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString(exclude = {"user", "paper"})
public class Like {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    // like N : 1 user
    @ManyToOne
    private User user;  //userStudentNumber

    @ManyToOne
    private Paper paper;

}

таблица пользователя

@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString(exclude = {"likeList"})
public class User {

    @Id
    private String studentNumber;

    private String userPassword;

    private String userEmail;

    // user 1 : N like
    @JsonIgnore
    @OneToMany(fetch = FetchType.LAZY, mappedBy = "user")
    private List<Like> likeList;
}

«бумажный стол»

@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString(exclude = {"likeList"})
public class Paper {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    // S3 key value
    private String keyName;
    // Github url
    private String github;

    @JsonIgnore
    @OneToMany(fetch = FetchType.LAZY, mappedBy = "paper")
    private List<Like> likeList;
}

, и я хочу увидеть результат этого запроса, например «выбрать *, например, где user_student_number =" 123 »и paper_id = 1 '

imagelike;' result, student_number is VARCHAR and paper_id is BIGINT">

как создать метод в LikeRepository с помощью метода запроса JPA?

@Repository
public interface LikeRepository extends JpaRepository<Like, Long> {
    Optional<Like> findByUserAndPaper(User user, Paper paper); //this doesn`t work
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...