1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Рациональное использование MySQL

Тема в разделе "Разработка плагинов для новичков", создана пользователем Slavkaa, 1 май 2018.

Статус темы:
Закрыта.
  1. Автор темы
    Slavkaa

    Slavkaa Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Начал использовать бд MySQL, из-за долгого неиспользования ее, я получил ошибку(таймаут). Искал в гугле, но там встречается в простых программах на джава, где коннект используется и после закрывается. Если так и надо делать, то как лучше сделать в плагине, открывать и закрывать коннект при выполнение команды или через определенное время открывать коннект заного? Или может есть нормальный способ, который мне не встретился?

    P.S. Не обливайте дерьмом особо, не работал раньше с бд никогда.
     
  2. hyndorik

    hyndorik Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Юзай пул конектов, Hikari Pool || Apache DBCP
     
  3. Exception_Prototype

    Exception_Prototype Активный участник Пользователь

    Баллы:
    96
    Если плагин простой и не хочешь морочиться с тем, что предложили выше, то сохраняй время последнего getConnection() (там типо con == null || isClosed и т.д.), а там проверяй, если настоящее время + время AUTO реконекта больше последнего, то реконектись соединение вручную.
     
  4. hyndorik

    hyndorik Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Ухх, вот это морочиться-то, 6 строк кода добавить и либу закинуть, ух, заморочиться то как надо
     
  5. MrTrojan

    MrTrojan Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    BlackTrojan
    Не неси бред, с помощью стандартного java.sql.* можно это реализовать.
     
  6. Rider3217

    Rider3217 Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    Лол, ну удачи тебе)
    Pi.Si. Почитай хотя бы про хикари, а потом что-то говори
     
  7. MrMagaChannel

    MrMagaChannel Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    mrmagachannel
    Дядь, нормальные люди юзают hikari и подобные либы, если любишь поговнокодить, то не навязывай это другим.
     
  8. Автор темы
    Slavkaa

    Slavkaa Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Я почитал про Hikari, понял, насколько он оптимизирован. Осталось посмотреть, как работать с Maven. Вопрос по самой работе с ним: то есть я могу просто подключаться к бд при запуске плагина, записывать HikariDataSource в какую-то переменную, а после получать коннект, когда это нужно(например, при выполнении команды) и после его закрывать?
     
  9. MrMagaChannel

    MrMagaChannel Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    mrmagachannel
    Юзай IDEA и с мавеном будешь работать на раз-два. На сайте хикари есть инструкция, как подключить его по мавен.

    Использовать это очень легко, вот пример:
    upload_2018-5-1_22-30-23.png
     
  10. Автор темы
    Slavkaa

    Slavkaa Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Ну по сути, закрывать hikari-соединение нужно только при отключении плагина, так?
    А Connection после использования его в команде?
     
  11. MrMagaChannel

    MrMagaChannel Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    mrmagachannel
    hikari в onDisable, а connection можно в try с ресурсами.
     
  12. Автор темы
    Slavkaa

    Slavkaa Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Slavok2001
    Ну все, бесконечно всем благодарен. Тему закрываю.
     
Статус темы:
Закрыта.

Поделиться этой страницей