У меня есть база данных с несколькими зарегистрированными пользователями, которые используют базу данных через java-приложение, используя jdbc. Я читал в другом месте, что соединения должны быть открыты и закрыты в кратчайшие возможные моменты времени, большую часть времени в том же блоке try, что и в статусе или запросе, который вы выполняете. Это, однако, подразумевает, что я должен хранить пользователя и пароль в памяти программы и использовать его повторно для создания новых соединений; но разве нет проблем с безопасностью при хранении пароля в памяти программы? Как сделать новые подключения к базе данных?Каков правильный способ подключения к серверу mysql в приложении jdbc?
ответ
Я предполагаю, что ваш вопрос НЕ о том, как закодировать соединение с БД.
Это действительно зависит от того, зарегистрированы ли ваши пользователи в базе данных, или у вас есть только один идентификатор (не человек) для подключения к программе и обслуживающий всех пользователей. Если первое, вы можете как-то попросить пользователя ввести пароль один раз, сохранить его в переменной, использовать переменную для подключения, отключить после использования, повторно подключиться/отключиться, если необходимо. Пароль только «хранится» в памяти «на лету» и больше не существует после завершения вашей программы, поэтому он безопасен.
Если это позже, то вам лучше запустить вашу программу на сервере веб-сервлетов и, как сказал Луиджи, использовать пул соединений. В этом случае пароль подключения будет закодирован в каком-либо файле конфигурации и доступен только администратору сервера. Если у вас нет такого сервера, вам нужно вернуться к решению в вышеприведенном абзаце и зарегистрировать всех своих пользователей в БД, каждый с собственным идентификатором и паролем.
Надеюсь, это поможет.
Я читал в другом месте, что соединения должны быть открыты и закрыты в кратчайшее возможное время
Сделка должна быть сделана в кратчайшие сроки. Постоянное открытие и закрытие соединений приведет к множеству (сетевых) накладных расходов.
Но если вы используете пул соединений, открытие и закрытие соединений приводит только к выводу соединения из пула и освобождению соединения обратно в пул. В этом случае открытие и закрытие соединения должно выполняться как можно быстрее, чтобы другие процессы/потоки могли повторно использовать соединение. Пул соединений сам управляет фактическим открытием и закрытием (сетевых) соединений для вас, а также другими полезными функциями, такими как обеспечение закрытия результатов, закрытие подготовленных отчетов, поддержание соединений и т. Д.
Использование пула соединений полезно используются ли подключения к базе данных с сервера-клиента или приложения. Я объяснил это в previous answer.
- 1. Подключение к серверу MySQL JDBC
- 2. Каков правильный способ подождать подключения?
- 3. Каков правильный способ подключения к базе данных из плагина eclipse?
- 4. Каков правильный способ подключения соединений EntityManager?
- 5. подключения к SQL серверу с JDBC ошибки
- 6. Настройка подключения к серверу MySQL в SmartFoxServer
- 7. Каков правильный способ подключения вызовов к услугам в AngularJS?
- 8. Каков текущий метод подключения к серверу/клиенту
- 9. Каков правильный способ подключения заголовка авторизации к запросу Ajax?
- 10. Правильный метод подключения android к SQL Server с использованием JDBC
- 11. Ошибка подключения к серверу mysql в openshift
- 12. доступ запрещен в JDBC подключения к MySQL
- 13. JDBC MySQL Ошибка подключения
- 14. Автономная библиотека для подключения к серверу MySQL
- 15. jdbc не может подключиться к серверу mysql
- 16. Это безопасный способ подключения и отключения к mysql через jdbc?
- 17. Правильный способ подключения NSTextField
- 18. Каков наилучший способ подключения к базе данных Mysql в Delphi
- 19. правильный способ подключения к Cloud SQL для производства?
- 20. Что такое корректный способ подключения к MySQL?
- 21. Безопасный способ подключения к RPC серверу
- 22. JDBC, подключиться к серверу sql
- 23. Правильный способ возврата к исходному серверу?
- 24. Готовые бобы для подключения MySQL к jdbc?
- 25. Java - проблема подключения к JDBC MySQL
- 26. Zabbix проблема подключения к серверу MySQL
- 27. Правильный способ подключения параметров UIActionSheet к действиям
- 28. Ошибка подключения jdbc MySQL
- 29. Ошибка подключения к серверу MySql - Python
- 30. Каков правильный способ использования транзакций JDBC в Java?
Используйте пул соединений с базой данных. Эта часть программного обеспечения инициализирует соединения и закрывает их для вас. –