Please open Telegram to view this post
VIEW IN TELEGRAM
😁3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2
Разберём принципиальные различия между низкоуровневым JDBC и ORM-подходом JPA.
Connection conn = DriverManager.getConnection(url, user, pass);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
String name = rs.getString("name");
// ручное преобразование
}
Характеристики:
- Низкоуровневый API для SQL-запросов
- Требует ручного управления соединениями
- Необходимо вручную преобразовывать ResultSet в объекты
@Entity
public class User {
@Id
private Long id;
private String name;
// геттеры/сеттеры
}
// Использование:
User user = entityManager.find(User.class, 1L);
- Высокоуровневая абстракция (ORM)
- Работа с объектами вместо SQL
- Автоматическое управление сессиями
- Кеширование, ленивая загрузка
▫️ Уровень абстракции
JDBC: SQL-ориентированный
JPA: Объектно-ориентированный
▫️ Преобразование данных
JDBC: Ручное
JPA: Автоматическое
▫️ Производительность
JDBC: Выше
JPA: Может быть ниже из-за накладных расходов
▫️ Код
JDBC: Больше boilerplate
JPA: Лаконичнее
▫️ Портативность
JDBC: Зависит от SQL диалекта
JPA: Независимость от БД
Резюмируем:
- JDBC даёт полный контроль, но требует больше кода
- JPA повышает продуктивность, скрывая сложности
- Для сложных запросов иногда комбинируют оба подхода
- Выбор зависит от проекта: JPA для бизнес-приложений, JDBC для высоконагруженных систем
Совет: Современные проекты часто используют Spring Data JPA, который ещё больше упрощает работу с JPA.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
Ответ -
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
Тернист и извилист путь Java-платформы к правильному способу записи строчек в лог-файлы. История logging в Java довольно познавательна в плане изучения особенностей Open Source, в том числе его взаимодействия с корпорациями и единичными программистами.
🔗 Ссылка на статью
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Ответ -
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3