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

26 записей с тегом "JDBC"

Посмотреть все теги

· 9 мин. чтения

1. Введение

В этой статье мы рассмотрим, как выполнять запросы к реляционным базам данных с помощью JDBC , используя идиоматический Groovy.

JDBC, хотя и является относительно низкоуровневым, является основой большинства ORM и других высокоуровневых библиотек доступа к данным на JVM. И мы, конечно, можем использовать JDBC непосредственно в Groovy; однако у него довольно громоздкий API.

К счастью для нас, стандартная библиотека Groovy основана на JDBC и представляет собой чистый, простой, но мощный интерфейс. Итак, мы будем изучать модуль Groovy SQL.

Мы рассмотрим JDBC в простом Groovy, не принимая во внимание какой-либо фреймворк, такой как Spring, для которого у нас есть другие руководства .

2. Настройка JDBC и Groovy

· 5 мин. чтения

1. Обзор

JDBC предоставляет Java API для чтения фактических данных, хранящихся в таблицах базы данных. Кроме того, тот же API можно использовать для чтения метаданных о базе данных. Метаданные означают данные о данных, такие как имена таблиц, имена столбцов и типы столбцов.

В этом руководстве мы узнаем, как извлекать различные типы метаданных с помощью интерфейса DatabaseMetaData .

2. Интерфейс базы данных метаданных

DatabaseMetaData — это интерфейс, который предоставляет множество методов для получения исчерпывающей информации о базе данных. Эта информация полезна для создания инструментов баз данных, которые позволяют пользователям исследовать структуру различных баз данных. Это также полезно, когда мы хотим проверить, поддерживает ли базовая база данных некоторые функции или нет.

· 4 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим различия между интерфейсами JDBC Statement и PreparedStatement . Мы не будем рассматривать CallableStatement — интерфейс API JDBC , который используется для выполнения хранимых процедур.

2. API-интерфейс JDBC

Оба оператора и PreparedStatement могут использоваться для выполнения запросов SQL. Эти интерфейсы очень похожи. Однако они существенно отличаются друг от друга по характеристикам и производительности:

  • Оператор используется для выполнения строковых SQL- запросов.
  • PreparedStatement используется для выполнения параметризованных SQL-запросов.

· 4 мин. чтения

1. Обзор

В некоторых сценариях нам может потребоваться отправить результат запроса к базе данных через вызов API в другую систему или платформу обмена сообщениями. Для таких случаев мы часто используем JSON в качестве формата обмена данными.

В этом руководстве мы увидим несколько способов преобразования объекта JDBC ResultSet в формат JSON .

2. Пример кода

Мы будем использовать базу данных H2 для нашего примера кода. У нас есть образец CSV-файла, который мы считываем в слова таблицы с помощью JDBC. Вот три строки из примера CSV-файла, причем первая строка является заголовком:

· 4 мин. чтения

1. Введение

В этой статье мы рассмотрим, как мы можем хранить нулевые значения в нашей базе данных, используя простой JDBC . Мы начнем с описания причин использования нулевых значений, а затем приведем несколько примеров кода.

2. Использование нулевых значений

null — ключевое слово, превосходящее все языки программирования. Представляет особую ценность. Распространено мнение, что null не имеет значения или ничего не представляет . Наличие нулевого значения в столбце базы данных означает, что место на жестком диске зарезервировано. Если подходящее значение становится доступным, мы можем сохранить его в этом пространстве.

Другое восприятие состоит в том, что null равен нулю или пустой строке . Нуль или пустая строка в конкретном контексте может иметь значение, например, ноль товаров на складе. Кроме того, мы можем выполнять такие операции, как суммирование или конкатирование этих двух значений. Но эти операции не имеют смысла при работе с null .

· 9 мин. чтения

1. Обзор

Есть много способов подключиться к базе данных MySQL из Java, и в этом руководстве мы рассмотрим несколько вариантов, чтобы увидеть, как этого добиться.

Мы начнем с рассмотрения, пожалуй, самых популярных вариантов использования JDBC и Hibernate.

Затем мы также рассмотрим некоторые внешние библиотеки, включая MyBatis, Apache Cayenne и Spring Data . Попутно мы приведем ряд практических примеров.

2. Предпосылки

· 4 мин. чтения

1. Обзор

В этой статье мы рассмотрим различные способы подсчета количества строк JDBC ResultSet .

2. Подсчет строк набора результатов

Подсчет строк ResultSet не является простым, поскольку ни один метод API не предоставляет эту информацию. Причина этого в том, что запрос JDBC не сразу извлекает все результаты . Результаты строки загружаются из базы данных каждый раз, когда мы запрашиваем их с помощью метода ResultSet.next .

Когда мы выполняем запрос JDBC, мы не можем заранее знать, сколько результатов мы получим. Вместо этого нам нужно пройти их все, и только когда мы дойдем до конца, мы сможем быть уверены в количестве доступных строк.

· 4 мин. чтения

1. Обзор

В этой статье мы обсудим некоторые аспекты состояния соединения JDBC . Во-первых, мы увидим наиболее распространенные причины потери соединения. Затем мы научимся определять статус подключения .

Мы также узнаем , как проверить соединение перед выполнением операторов SQL .

2. JDBC-соединение

Класс Connection отвечает за связь с источником данных. Связь может быть потеряна по разным причинам:

· 8 мин. чтения

1. Введение

Подключения к базе данных , созданные с помощью JDBC API, имеют функцию, называемую режимом автоматической фиксации .

Включение этого режима может помочь избавиться от стандартного кода, необходимого для управления транзакциями . Однако, несмотря на это, его цель и то, как он влияет на обработку транзакций при выполнении операторов SQL , иногда могут быть неясны.

В этой статье мы обсудим, что такое режим автоматической фиксации и как его правильно использовать как для автоматического, так и для явного управления транзакциями. Мы также рассмотрим различные проблемы, которых следует избегать при включенной или выключенной автоматической фиксации.

2. Что такое режим автоматической фиксации JDBC?

· 4 мин. чтения

1. Обзор

Когда мы работаем над многопоточными проектами, мы знаем, что если несколько потоков совместно используют объекты, которые не реализованы с учетом безопасности потоков , потоки могут вести себя неожиданно .

Многие из нас, возможно, страдали от проблем с потокобезопасностью. Итак, вопрос «Является ли этот класс потокобезопасным?» часто приходит на ум.

Приложение Java довольно часто обращается к реляционным базам данных через JDBC, а также использует многопоточность. В этом кратком руководстве мы обсудим, является ли java.sql.Connection потокобезопасным.

2. Интерфейс java.sql.Connection