Перейти к содержимому

Как подключить базу данных к intellij idea

  • автор:

Как подключить MySQL к бесплатной версии Intellij IDEA (community)

Привет, сегодня покажу как подключить Ваше приложение к базе данных (БД) в бесплатной версии Intellij IDEA (community).В статье будет: много картинок, мало букв, будет интересно и полезно.

Статья ориентирована на людей уже знакомых с Java Core и MySQL.

А так же для подключения базы данных к приложению Вам необходимо скачать и перед прочтением статьи установить сервер с официального сайта (Это бесплатно).https://dev.mysql.com/downloads/workbench/

1: Создаём новый проект в Intellij IDEA

image

2: Затем идём вFile->Settings->Plugins->MarketPlace и в поисковой строке вводим Database Navigator.Устанавливаем, перезапускаем Intellij IDEA.

3: После установки плагина и перезапуска Intellij IDEA, в Вашем ТулБаре появится новое окно (DB Navigator)

4: Заходим в новое окно(DB Navigator), нажимаем зелёный плюсик и из предложенного списка выбираем MySQL

5: В появившемся окне вписываем в поле Name, имя которое вы хотите дать базе данных. Описание можно оставить пустым.Host и Port трогать не нужно. Проследите за тем что бы в поле Database была строка mysql. Вводим User и Password (Обычно это (root) для Логина и Пароля). После всего нажимайте Test Connection.

6: При тестировании соединения может возникнуть ошибка временной зоны. Для её исправления в поиске операционной системы вводим mysql, и выбираем MySQL Command Line Client (всё как на картинке).

7: В появившемся консоле вводим пароль БД, И вводим команду set global time_zone = ‘+3:00’;(+3 часа это мой часовой пояс так как я нахожусь в Минске, вы вводите часовой пояс своего города).

8: После исправления ошибки жмите Apply, Ok и в вашем DB navigator появляется структура БД с которой вы можете просматривать таблицы и БД.

9: Рекомендую при просматривании таблиц нажимать на кнопку No filters.

10: Теперь нужно установить драйвер (это быстро) для Вашей БД. Идём на официальный сайт ORACLE ( dev.mysql.com/downloads/connector/j ) и качаем архив. Выберите из списка Platform Independent.

11: Когда архив загрузился, открываем его и извлекаем файл (смотрите картинку) в папку (путь к папке нужно запомнить).

12: Переходим в Intellij IDEA, там ищем File->Project Structure ->SDK’s -> плюсик который отмечен стрелкой -> ищем файл который только что скачали -> жмём ОК.

13: База Данных подключена к Intellij IDEA! Теперь надо разобраться как подключиться к ней через приложение. Для этого я создал класс который назвал TestConnection и в нём прописал константы (USER_NAME, PASSWORD, URL), создал статические Statement и Connection.

14: Кстати что бы найти значение поля URL, нужно открыть Ваш DB Navigator, нажать на зелёный плюс, выбрать mysql(Тут БД может попросить логин и пароль), и в открывшемся окне выбрать Info. Скопировать значение строки Connection URL.Это и будет URL.

15: Осталось немного. Просим у ДрайверМенеджера что бы он дал нам соединение (смотрите картинку ниже, верхний красный блок).Всё должно быть обёрнуто в ТрайКэтч. А в нижнем блоке создаём Statement.

16: Как я уже писал статья ориентирована на людей уже знакомых с языком MySQL. все запросы легко гугляться, язык очень простой и является MustHave(обязательно) для каждого BackEND Developer, поэтому я не буду объяснять что написано на языке SQL (было бы очень долго). Что касается Java:

1 — В главном методе (main) нужно указать ClassPath (первая строка на картинке).
2 — Во втором красном блоке у Statement я вызвал метод executeUpdater. Его нужно использовать для обновления или добавления данных в таблице. Метод, по умолчанию, в параметры принимает строку в которую Вам следует писать ваши SQL-запросы обёрнутый в двойные кавычки.
3 — Добавление данных в таблицу наглядно.
4 — Для получения данных из таблицы я вызвал метод executeQuery у Statement, он так же принимает строку в параметры.
5 — Что бы вывести в консоль данные полученные с таблицы я использую цикл while с параметром (смотрите картинку) который проходит все строки таблицы по очереди, а в теле вызывается метод getString у resulySet (Всё как на картинке). этот метод принимает в параметры цифру которая означает номер колонки которую вы хотите получить.

Какие могут быть ошибки

Хочу рассказать о некоторых ошибках с которыми Вы можете встретиться, конечно вы можете это не читать, но это очень важно.

1 — Если создание таблицы прошло успешно, её следует закомментировать потому что так как таблица уже создана, при следующем запуске приложение вылетит, потому что код начнёт отрабатывать по новой и попытается создать ещё одну таблицу с таки же Name, а это запрещено.

Будет вот такая ошибка. Что значит «Таблица Name уже существует»

2 — Так же и со всеми данными, если они добавлены успешно, следует удалять или комментировать строки которые их добавляли или обновляли.

3 — Будьте внимательны с SQL, Intellij IDEA не подчёркивает ошибки которые вы допускаете в синтаксисе, закрывайте скобки и кавычки. Пример ошибки синтаксиса SQL

Всем спасибо
AlexOakUnlimited ©

Как подключить базу данных к intellij idea

IntelliJ IDEA Ultimate Edition имеет удобные средства работы с базами данных. Рассмотрим, как подключиться к HSQLDB с ее помощью. Запустите IDEA и откройте панель Database.

Создайте новый источник данных с помощью контекстного меню.

В открывшемся окне выберите драйвер hsqldb-x.x.x.jar который вы можете скопировать из подкаталога lib каталога установки CUBA Studio.

Далее необходимо указать свойства источника данных: Dаtabase URL, пользователя и пароль. Database URL можно найти на вкладке Project properties в CUBA Studio или скопировать из файла modules/core/web/META-INF/context.xml проекта. По-умолчанию пользователь — sa, пароль отсутствует.

db hsql idea setDbProperties

Если вы используете PostgreSQL в качестве СУБД и uuid в качестве идентификатора, то при редактировании данных в IntelliJ IDEA может возникнуть ошибка ERROR: operator does not exist: uuid = character varying .

Для решения этой проблемы в настройках источника данных перейдите на вкладку Advanced и присвойте свойству stringtype значение unspecified .

Платформа CUBA. Руководство по разработке приложений
5.5.2. Подключение к HSQLDB внешними инструментами

IntelliJ IDEA Ultimate Edition имеет удобные средства работы с базами данных. Рассмотрим, как подключиться к HSQLDB с ее помощью. Запустите IDEA и откройте панель Database .

Создайте новый источник данных с помощью контекстного меню.

В открывшемся окне выберите драйвер hsqldb-x.x.x.jar . Можно воспользоваться JAR-файлом, который поставляется вместе с CUBA Studio — он находится в подкаталоге lib .

Далее необходимо указать свойства источника данных: Dаtabase URL, пользователя и пароль. Database URL можно найти на вкладке Project properties в CUBA Studio или скопировать из файла modules/core/web/META-INF/context.xml проекта. По-умолчанию пользователь — sa, пароль отсутствует.

Если вы используете PostgreSQL в качестве СУБД и uuid в качестве идентификатора, то при редактировании данных в IDEA может возникнуть ошибка ERROR: operator does not exist: uuid = character varying .

Для решения этой проблемы в настройках источника данных перейдите на вкладку Advanced и присвойте свойству stringtype значение unspecified .

Рисунок 5.11.

  • Предисловие
    • Целевая аудитория
    • Дополнительные материалы
    • Обратная связь
    • Обзор платформы
    • Технические требования
    • Release Notes
    • Установка CUBA Studio
    • Интеграция CUBA Studio с IDE
    • Описание задачи
    • Создание проекта
    • Создание сущностей
    • Создание таблиц базы данных
    • Создание экранов пользовательского интерфейса
      • Экраны управления Покупателями
      • Экраны управления Заказами
      • Меню приложения
      • Экран редактирования Покупателя со списком Заказов
      • Архитектура
        • Уровни и блоки приложения
        • Модули приложения
        • Базовые проекты
        • Состав приложения
        • Модель данных
          • Базовые классы сущностей
          • Аннотации сущностей
            • Аннотации класса
            • Аннотации атрибутов
            • Использование
            • Политика обработки связей
            • Ограничение уникальности на уровне БД
            • Интерфейсы метаданных
            • Формирование метаданных
            • Datatype
              • Пример форматирования даты в UI
              • Примеры форматирования дат и чисел в коде приложения
              • Пример специализированного Datatype
              • Создание представлений
              • Создание бина
              • Использование бина
              • Создание JMX-бина
              • JMX-бины платформы
                • CachingFacadeMBean
                • ConfigStorageMBean
                • EmailerMBean
                • PersistenceManagerMBean
                • ScriptingManagerMBean
                • ServerInfoMBean
                • Configuration
                • Messages
                  • MessageTools
                  • MetadataTools
                  • Запросы с distinct
                  • Последовательная выборка
                  • Доступ к свойствам
                  • Хранение свойств в файлах
                  • Хранение свойств в базе данных
                  • Конфигурационные интерфейсы
                    • Использование
                    • Типы свойств
                    • Значения по умолчанию
                    • Пакеты сообщений
                    • Главный пакет сообщений
                    • Локализация названий сущностей и атрибутов
                    • Локализация enum
                    • UserSession
                    • Вход в систему
                    • SecurityContext
                    • Классы исключений
                    • Передача исключений Middleware
                    • Обработчики исключений клиентского уровня
                    • Типы СУБД
                      • Поддержка произвольных СУБД
                      • Версия СУБД
                      • Структура SQL-скриптов
                      • Структура Groovy-скриптов
                      • Сервисы
                        • Создание сервиса
                        • Использование сервиса
                        • DataService
                        • PersistenceTools
                        • PersistenceHelper
                        • DbTypeConverter
                        • EntityManager
                        • Состояния сущности
                        • Загрузка по требованию
                        • Выполнение JPQL запросов
                          • Поиск подстроки без учета регистра
                          • Макросы в JPQL
                          • Программное управление транзакциями
                          • Декларативное управление транзакциями
                          • Примеры взаимодействия транзакций
                            • Откат вложенной транзакции
                            • Чтение и изменение данных во вложенной транзакции
                            • Особенности реализации для различных СУБД
                            • Экраны
                              • Типы экранов
                                • Фрейм
                                • Простой экран
                                • Экран выбора
                                • Экран редактирования
                                • AbstractFrame
                                • AbstractWindow
                                • AbstractLookup
                                • AbstractEditor
                                • Инжекция зависимостей контроллеров
                                • Компаньоны контроллеров
                                • Компоненты
                                  • Button
                                  • Bulk Editor
                                  • CheckBox
                                  • DateField
                                  • Embedded
                                  • FieldGroup
                                  • FileMultiUploadField
                                  • FileUploadField
                                  • Filter
                                    • Использование фильтра
                                    • Описание компонента Filter
                                    • Права пользователей
                                    • Внешние параметры для управления фильтрами
                                    • Последовательное наложение фильтров
                                    • BoxLayout
                                    • ButtonsPanel
                                    • GridLayout
                                    • GroupBoxLayout
                                    • IFrame
                                    • ScrollBoxLayout
                                    • SplitPanel
                                    • TabSheet
                                    • Formatter
                                    • Presentation
                                    • Timer
                                    • Validator
                                    • Создание источников данных
                                      • Декларативное создание
                                      • Программное создание
                                      • Собственные классы реализации
                                      • Возвращаемые значения
                                      • Параметры запроса
                                      • Фильтр запроса
                                      • Поиск подстроки без учета регистра
                                      • Декларативное создание действий
                                      • Стандартные действия
                                        • Стандартные действия с коллекцией
                                          • CreateAction
                                          • EditAction
                                          • RemoveAction
                                          • RefreshAction
                                          • AddAction
                                          • ExcludeAction
                                          • ExcelAction
                                          • LookupAction
                                          • ClearAction
                                          • OpenAction
                                          • Диалоговые окна
                                          • Уведомления
                                          • Использование фоновых задач
                                          • Настройка окружения
                                          • Тема в веб-приложениях
                                            • Использование существующих тем
                                            • Расширение существующей темы
                                            • Создание новой темы
                                            • Работа с компонентами Vaadin
                                            • Компоновка главного окна приложения
                                            • Работа с компонентами Swing
                                            • Использование сторонних компонентов Vaadin
                                            • Интеграция компонентов в Generic UI
                                            • Базовая функциональность
                                            • REST API
                                              • Включение в проект
                                              • Описание функций
                                                • Логин
                                                • Логаут
                                                • Загрузка экземпляра персистентного объекта из базы данных по идентификатору
                                                • Выполнение JPQL запроса для выборки данных
                                                • Коммит новых и измененных экземпляров, удаление
                                                • Загрузка файла из хранилища
                                                • Получение описания модели данных в формате HTML
                                                • Cоздание новых представлений на сервере
                                                • Вызов сервисов
                                                  • Вызов сервиса с помощью GET запроса
                                                  • Вызов сервиса с помощью POST запроса
                                                  • Поддерживаемые типы параметров метода сервиса
                                                  • Результат вызова сервиса
                                                  • Выполнение задач по расписанию
                                                    • Spring TaskScheduler
                                                    • Назначенные задания CUBA
                                                      • Регистрация задания
                                                      • Управление обработкой заданий
                                                      • Особенности реализации
                                                      • Методы отправки
                                                      • Вложения
                                                      • Настройка параметров отправки email
                                                      • Управление динамическими атрибутами
                                                      • Категоризируемые сущности
                                                      • Динамические атрибуты в REST API
                                                      • Блокировка редактирования сущностей
                                                      • Блокировка произвольных процессов
                                                      • Мониторинг блокировок
                                                      • Настройка журналирования
                                                      • Отображение журнала
                                                      • Сохранение снимков
                                                      • Отображение снимков
                                                      • Загрузка файлов
                                                      • Выгрузка данных
                                                      • Стандартная реализация хранилища
                                                      • Папки приложения
                                                      • Папки поиска
                                                      • Наборы
                                                      • Расширение сущности
                                                      • Расширение экранов
                                                      • Расширение бизнес-логики
                                                      • Рекомендуемый стиль кода
                                                      • Файловая структура проекта
                                                      • Описание скриптов сборки
                                                        • Структура build.gradle
                                                        • Запуск задач сборки
                                                        • Сборка на сервере Continuous Integration
                                                        • Создание схемы БД
                                                        • Подключение к HSQLDB внешними инструментами
                                                          • Подключение с помощью Squirrel SQL
                                                          • Подключение с помощью IntelliJ IDEA Ultimate
                                                          • Настройка логгирования в Tomcat
                                                          • Настройка логгирования в десктоп клиенте
                                                          • Подключение отладчика
                                                          • Отладка виджетов в веб-браузере
                                                          • Тестирование
                                                            • Модульные тесты
                                                            • Интеграционные тесты Middleware
                                                            • Интеграционные тесты клиентского уровня
                                                            • Получение локализованных сообщений
                                                            • Присвоение начальных значений
                                                              • Инициализация полей сущности
                                                              • Инициализация с помощью CreateAction
                                                              • Использование метода initNewItem
                                                              • Реализация композиции
                                                              • Глубокая композиция
                                                              • Пример использования стороннего компонента Vaadin
                                                              • Пример интеграции компонента Vaadin в Generic UI
                                                              • Каталоги приложения
                                                                • Конфигурационный каталог
                                                                • Рабочий каталог
                                                                • Каталог журналов
                                                                • Временный каталог
                                                                • Каталог скриптов базы данных
                                                                • Быстрое развертывание в Tomcat
                                                                  • Использование Tomcat при эксплуатации приложения
                                                                  • Настройка кластера Web Client
                                                                    • Установка и настройка Load Balancer
                                                                    • Настройка серверов Web Client
                                                                    • Настройка обращения к кластеру Middleware
                                                                    • Настройка взаимодействия серверов Middleware
                                                                    • Встроенная JMX консоль
                                                                    • Настройка удаленного доступа к JMX
                                                                      • Tomcat JMX под Windows
                                                                      • Tomcat JMX под Linux
                                                                      • Использование механизма выполнения скриптов БД сервером
                                                                      • Инициализация и обновление БД из командной строки
                                                                      • Компоненты подсистемы безопасности
                                                                        • Окно входа в систему
                                                                        • Пользователи
                                                                          • Замещение пользователей
                                                                          • Ограничения
                                                                          • Атрибуты сессии
                                                                          • Базовая интеграция с Active Directory
                                                                          • Настройка аутентификации с использованием Jespa
                                                                            • Подключение библиотеки
                                                                            • Настройка конфигурации
                                                                            • Настройка ролей
                                                                            • Создание локальных администраторов
                                                                            • context.xml
                                                                            • datatypes.xml
                                                                            • dispatcher-spring.xml
                                                                            • menu.xml
                                                                            • metadata.xml
                                                                            • permissions.xml
                                                                            • persistence.xml
                                                                            • remoting-spring.xml
                                                                            • screens.xml
                                                                            • spring.xml
                                                                            • views.xml
                                                                            • web.xml

                                                                            Как подключить Microsoft SQL Server к Intellij Idea Ultimate

                                                                            Всем привет! Это моя первая статья в жизни, поэтому в ней может быть много неточностей. Мои знания в программирования слабы, но у меня получилось решить проблему, о которой мало что было написано на просторах интернета (либо я плохо искал). Но надеюсь статья вам поможет =)

                                                                            Подготовительный этап

                                                                            В данном туториале мы подключаемся к библиотеке JDBC. Нам потребуется следующее:
                                                                            1) Intellij Idea Ultimate
                                                                            2) SQL Server Management Studio (SSMS)
                                                                            3) Драйвер JDBC, который мы разархивируем в Program Files
                                                                            4) SQL Server Configuration Manager

                                                                            Настройка проекта в Intellij Idea

                                                                            Первое, что нужно сделать, добавить зависимость в pom.xml:

                                                                             com.microsoft.sqlserver mssql-jdbc 11.2.2.jre11 

                                                                            Настройка SQL Server Management Studio

                                                                            Запускаем SSMS и создаём нового пользователя:

                                                                            Во вкладке «Общие» задаём какое-нибудь имя пользователю и пароль, при этом, чтобы галочка стояла у «Проверка подлинности SQL Server»:

                                                                            Далее переходим во вкладку «Роли сервера» и ставим галочку возле «sysadmin»:

                                                                            Ещё заходим в свойства своего сервера:

                                                                            Во вкладке «Безопасность» ставим галочку у «Проверки подлинности SQL Server и Windows»:

                                                                            Подключаемся затем к серверу. Для примера я создал базу данных и табличку к ней:

                                                                            CREATE DATABASE example; USE example GO CREATE TABLE first ( ID INT PRIMARY KEY IDENTITY(1,1), Num INT NOT NULL )

                                                                            Настройка SQL Server Configuration Manager

                                                                            Дальше мы будем производить настройку в Configuration Manager, но заранее оговорюсь, что я не уверен наверняка, нужны ли все шаги, которые будут описаны ниже.
                                                                            1) Переходим в «Протоколы для MSSQLSERVER» и включаем все протоколы:

                                                                            2) Переходим в свойства TCP/IP и ставим настройки, как на рисунке ниже:

                                                                            3) Далее вкладка «IP-адреса». Вот здесь есть неточность. Я приведу все скриншоты настроек, которые у меня есть, но может оказаться так, что что-то может быть не необходимым. Но наверняка скажу, что IP4 нужен.

                                                                            В IP11 и IP12 я ставил TCP-порт 1433 и в строчке «Включено» установил параметр «Да»:

                                                                            Для настройки IP4 нужно поменять IP-адрес. Заходите на какой-либо ресурс, к примеру этот, и выписываете:

                                                                            В IPALL я вписал TCP-порт, а значение в «Динамических TCP-портах» потом подставилось само:

                                                                            Настройка Брандмауэра

                                                                            Данный этап, возможно, является необязательным, но всё же упомяну его. В ходе работы встречалась ошибка, где компилятор ругался на брандмауэр, поэтому для его решения есть полезная ссылка. Все шаги подробно расписаны, поэтому я не буду расписывать данный этап. Но единственное, на данном сайте написано про порт 80, вместо него мы пишем порт 1433. Вот ссылка.

                                                                            Подключение базы данных

                                                                            Заходим в Intellij Idea и переходим, как показано на рисунке:

                                                                            Хост ставим localhost, порт = 1433. Имя пользователя, пароль и имя БД пишем свои:

                                                                            После ввода нажимаем на «Test Connection»:

                                                                            ВНИМАНИЕ. У вас может появиться данная ошибка:

                                                                            Для её решения переходим в SSMS в свойства данного пользователя и в полях «Пароль», «Подтверждение пароля», «Старый пароль» пишем тот же пароль, что мы устанавливали ранее для данного пользователя и нажимаем ОК. (Чтобы показать ошибку, я создал другого пользователя).

                                                                            Проделываем процедуру по подключению выше и вуаля, всё работает:

                                                                            Нажимаем Apply и ОК. Выбираем нашу подключенную БД и нажимаем Ctrl+F5:

                                                                            После этого мы можем подключить нашу БД через код

                                                                            За подключение БД отвечает следующий кусочек кода, прописанный в классе. Ваши данные вписываете в нужные поля (DBName, user, pass):

                                                                            private val connection: Connection init < Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver") val connectionUrl = "jdbc:sqlserver://localhost:1433;encrypt=true;database=DBName;trustServerCertificate=true;" connection = DriverManager.getConnection(connectionUrl, "user", "pass") >

                                                                            Заключение

                                                                            Спасибо за прочтение. Надеюсь, кому-то это помогло =)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *