Подключение внешнего ключа из таблицы, которая присутствует в той же БД, с использованием 2 приложения Spring Boot.JAVA

Программисты JAVA общаются здесь
Гость
Подключение внешнего ключа из таблицы, которая присутствует в той же БД, с использованием 2 приложения Spring Boot.

Сообщение Гость »


Я хочу создать внешний ключ в качестве ссылки из таблицы пользователей, чтобы легко хранить и извлекать сообщения. Проблема в микросервисах весенней загрузки. Я хочу запустить 2 приложения Spring boot, одно для аутентификации пользователя, а другое — для аутентификации пользователя. для хранения сообщений. Итак, как подключить внешний ключ как ссылку на пользовательскую таблицу из двух приложений diff Spring Boot?

Таблицы в БД:

mysql> показать таблицы; +----------------------+ | Таблицы_in_spamspring | +----------------------+ | _пользователь | | сообщение | +----------------------+ 2 ряда в наборе (0,00 сек) Пользователь таблицы: mysql> описание _user;

+----------+--------------------------+----- -+-----+---------+----------------+ | Поле | Тип | Ноль | Ключ | По умолчанию | Экстра | +----------+--------------------------+------+---- -+---------+----------------+ | жидкость | биинт | НЕТ | ПРИ | НУЛЬ | авто_инкремент | | электронная почта | варчар(50) | НЕТ | | НУЛЬ | | | имя | варчар(50) | НЕТ | | НУЛЬ | | | пароль | варчар(255) | НЕТ | | НУЛЬ | | | роль | enum('АДМИН','КЛИЕНТ') | ДА | | НУЛЬ | | +----------+--------------------------+------+---- -+---------+----------------+ 5 рядов в наборе (0,01 сек) Сообщения таблицы:

mysql> сообщение описания; +-----------+--------------+------+-----+--------- +----------------+ | Поле | Тип | Ноль | Ключ | По умолчанию | Экстра | +-----------+--------------+------+-----+--------- +----------------+ | идентификатор | биинт | НЕТ | ПРИ | НУЛЬ | авто_инкремент | | контент | варчар(255) | ДА | | НУЛЬ | | | временная метка | дата-время(6) | ДА | | НУЛЬ | | | идентификатор_пользователя | биинт | ДА | | НУЛЬ | | +-----------+--------------+------+-----+--------- +----------------+ 4 ряда в наборе (0,00 сек) Сущность сообщения:

пакет com.message.userMessage.Entity; импортировать jakarta.persistence.Entity; импортировать jakarta.persistence.GeneratedValue; импортировать jakarta.persistence.GenerationType; импортировать jakarta.persistence.Id; импортировать ломбок.Данные; импортировать java.time.LocalDateTime; @Данные @Сущность Сообщение публичного класса { @Идентификатор @GeneratedValue(стратегия = GenerationType.IDENTITY) частный длинный идентификатор; частный длинный идентификатор пользователя; // Внешний ключ к таблице User содержимое частной строки; частная временная метка LocalDateTime; } Пользователь:
пакет com.spam.shield.model; импортировать java.util.Collection; импортировать java.util.Date; // Весь импорт @Данные @Builder @NoArgsConstructor @AllArgsConstructor @Сущность @Table(name = "_user") публичный класс User реализует UserDetails { @Идентификатор @GeneratedValue(стратегия = GenerationType.IDENTITY) частный длинный идентификатор; @Column (длина = 50, значение null = false) частное имя строки; @Column (длина = 50, значение null = false) личная строка электронной почты; @Column (обнуляемый = ложь) личный строковый пароль; @Enumerated(EnumType.STRING) частная ролевая роль; @OneToMany(mappedBy = "пользователь", cascade = CascadeType.ALL, fetch = FetchType.EAGER) @Override публичная коллекция

Вернуться в «JAVA»