Регистрация в SpringBoot возвращает ноль, но MySQL возвращает 4 строки - PullRequest
0 голосов
/ 31 января 2020

Субъект отправителя:


@Entity(name="MESSAGES")
public class MessageSender {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Integer message_id;

    private Integer sender_id;
    private String subject;

    private String body;

    @Lob
    @Column(name = "attachment", columnDefinition = "BLOB")
    private byte[] attachment;

    private Timestamp sent_date;
    private Integer parent_message_id;

    private String trigger;

    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
    @PrimaryKeyJoinColumn(name = "message_id")
    private MessageRecipient message_recipient ;

    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
    @PrimaryKeyJoinColumn(name = "message_id")
    private TimeTrigger timeTrigger ;

    //getters and setters
    }
}

Субъект получателя:

@Entity(name = "MESSAGE_RECIPIENT")
public class MessageRecipient {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Integer message_recipient_id;

    private Integer recipient_id;
    private Integer recipient_group_id;
    private Integer message_id;
    private String notification_sent;
    private String is_read;

    @OneToOne(fetch=FetchType.LAZY, mappedBy="message_recipient")
    private MessageSender message_sender;

    //getters and setters

Код соединения:

public interface MessageSenderRepository extends CrudRepository<MessageSender, Integer> {
    @Query("select m.message_id, m.message_recipient from MESSAGES m")
    List<MessageSender> fetchMessagesInnerJoin();
}

Когда я получаю доступ к API через контроллер, вывод пусто. Однако я знаю, что должны быть возвращены 4 строки, и когда я выполняю запрос Join на MySQL, он работает. Что я делаю не так?

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