Как сохранить увлечения пользователей в базе данных MySQL, а затем получить список пользователей с общими увлечениями с помощью JDBC?

#java #mysql #database #jdbc #web-applications

#java #mysql #База данных #jdbc #веб-приложения

Вопрос:

У меня есть веб-приложение, где в форме регистрации пользователя пользователь заполняет небольшой опрос (т. Е. Y / N флажков), чтобы выбрать свои увлечения из заранее заданного списка из 10-15 хобби. Я хочу иметь возможность сохранять выбранные увлечения каждого пользователя в базе данных MySQL, а затем восстанавливать список пользователей с 1 или более общими увлечениями. Как я могу реализовать это в JDBC и MySQL?

Я попытался создать 1 таблицу, содержащую информацию об учетной записи пользователя

 | userID | username | password   |
| 1      | mark     |    fdaf    |
| 2      | sam      |     dfad   |
| 3      | josh     |   teyto    |
 

и 1 таблица, содержащая только доступные увлечения

 | interestID | interest  |
| 1          | Cars      |
| 2          | Computers |
| 3          | Swimming  |
 

И объединение их в отношения «многие ко многим».

 | userID | interestID  |
|    1   |    1        |
|    1   |    2        |
|    2   |    3        |
|    3   |    1        |
|    3   |    3        |    
 

Я не уверен, куда идти дальше. Как мне восстановить список всех пользователей, имеющих общие интересы с конкретным пользователем. Скажем, введите пользователя 1 -> извлеките список, содержащий пользователей 2 и 3; введите пользователя 2 -> извлеките список, содержащий пользователя 1.

Комментарии:

1. Шаг 1) Узнайте о нормализации базы данных. Шаг 2) Попробуйте что-нибудь. Шаг 3) Если у вас возникли проблемы, отправьте вопрос о переполнении стека, включая то, что вы пробовали, чтобы мы могли помочь довести это до конца. Отвечать на этот вопрос здесь слишком преждевременно, на объяснение основ уйдут часы. Существует множество обучающих курсов, онлайн и других, платных и бесплатных, которые охватывают это.

2. Я отредактировал свой пост. Достаточно ли этого?