Zum Hauptinhalt springen
tsecurity.de LIVE
Echtzeit-Radar & Feeds
Alle RSS Feeds
👥 Community & Social
YouTube Security VideosGoogle Cloud Tech: Vibe coding in the pit lane 🏁(23.09.2026 um 01:00 Uhr)
Sichere ProgrammierungBuild an Explainable Vendor-Risk Gate in Node.js(23.09.2026 um 00:27 Uhr)
Sichere ProgrammierungFrom p=none to Enforcement: A Working Sequence for DMARC Rollout(23.09.2026 um 00:40 Uhr)
Sichere ProgrammierungWhen OPA's Bundle Loader Runs Past a `.manifest` Typo(23.09.2026 um 00:53 Uhr)
Sichere ProgrammierungGovernance Attack Surface Review: Bybit(23.09.2026 um 01:00 Uhr)
Linux Tipps & HardeningOpenShot video editor is now available as a snap(23.09.2026 um 00:09 Uhr)
KI & AI VideosAI Revolution: AI Robots Are Beating Humans Now(23.09.2026 um 00:32 Uhr)
YouTube Security VideosGoogle Cloud Tech: Vibe coding in the pit lane 🏁(23.09.2026 um 01:00 Uhr)
Sichere ProgrammierungBuild an Explainable Vendor-Risk Gate in Node.js(23.09.2026 um 00:27 Uhr)
Sichere ProgrammierungFrom p=none to Enforcement: A Working Sequence for DMARC Rollout(23.09.2026 um 00:40 Uhr)
Sichere ProgrammierungWhen OPA's Bundle Loader Runs Past a `.manifest` Typo(23.09.2026 um 00:53 Uhr)
Sichere ProgrammierungGovernance Attack Surface Review: Bybit(23.09.2026 um 01:00 Uhr)
Linux Tipps & HardeningOpenShot video editor is now available as a snap(23.09.2026 um 00:09 Uhr)
KI & AI VideosAI Revolution: AI Robots Are Beating Humans Now(23.09.2026 um 00:32 Uhr)
Intelligence View
⚡ tsecurity.de Intelligence

ORM, JPA, Hibernate, JDBC, JPQL, DDL, DML e DQL: descomplicando a sopa de letrinhas do Java

Neste post, vamos destrinchar essa famosa “sopa de letrinhas” do mundo Java: ORM, JPA, Hibernate, JDBC, JPQL, DDL, DML e DQL. A ideia é explicar, de forma direta, o que cada sigla significa, como se relacionam entre si e onde entram no dia …

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!

Neste post, vamos destrinchar essa famosa “sopa de letrinhas” do mundo Java: ORM, JPA, Hibernate, JDBC, JPQL, DDL, DML e DQL. A ideia é explicar, de forma direta, o que cada sigla significa, como se relacionam entre si e onde entram no dia a dia de desenvolvimento.



Começando por ORM (Object-Relational Mapping): trata-se de um conceito que define como converter dados entre o modelo de objetos de uma linguagem orientada a objetos e o modelo relacional de um banco de dados. Em outras palavras, o ORM faz a ponte entre classes e tabelas. ORM não é algo exclusivo de Java: cada linguagem costuma ter seus próprios frameworks, como Java (Hibernate, EclipseLink), .NET (Entity Framework) e Python (SQLAlchemy).



Já a JPA (Java Persistence API) é a especificação padrão de como fazer ORM no ecossistema Java. Ela define a “contrato”, como mapear entidades, como funcionam operações de persistência, consultas, transações e assim por diante. Para que isso tudo rode de verdade, precisamos de uma implementação dessa especificação, como o Hibernate, que é o framework concreto responsável por executar o que a especificação define como se fosse a relação entre uma interface e sua implementação. Um ponto importante: hoje o nome oficial da especificação é Jakarta Persistence; o termo “JPA” ficou associado às versões mantidas pela Oracle e não é mais usado para as versões open da comunidade.



Até aqui, podemos resumir assim: ORM é o conceito; Jakarta Persistence (antiga JPA) é a especificação de ORM no mundo Java; e o Hibernate é o framework ORM que implementa essa especificação.



Agora, entrando em JDBC (Java Database Connectivity). O JDBC é a API de baixo nível do Java para conversar com o banco de dados: abrir conexão, preparar e executar SQL, tratar resultados, entre outras operações. Todo framework ORM em Java usa JDBC por baixo; o ORM não substitui o JDBC, ele o abstrai. Com JDBC puro, é possível controlar diretamente as conexões e os comandos SQL, mas isso também aumenta o risco de problemas como múltiplas conexões abertas sem necessidade, falhas de tratamento de erros ou vulnerabilidades como SQL injection, se o código não for bem cuidado. Por isso, o uso de JDBC puro costuma ficar restrito a cenários em que controle fino e desempenho máximo são essenciais.



Com isso em mente, fica mais fácil visualizar a pilha: quando usamos Jakarta Persistence com o Hibernate como implementação, o framework cuida das entidades e consultas em nível de objeto e, por baixo dos panos, utiliza JDBC para se conectar ao banco de dados e executar os comandos SQL.



Falando agora das ações no banco de dados, entramos nas siglas DDL, DML e DQL.




  • DDL (Data Definition Language) é o conjunto de comandos usados para definir ou alterar estruturas, como CREATE TABLE e ALTER TABLE.


  • DML (Data Manipulation Language) cuida da manipulação de dados, com comandos como INSERT, UPDATE e DELETE.


  • DQL (Data Query Language) é focada em consultas de dados, basicamente o SELECT.




No cotidiano de uma aplicação, usamos essas linguagens o tempo todo, mesmo sem perceber. Por exemplo: ao subir uma aplicação que cria as tabelas no banco, estamos executando DDL. Quando a aplicação recebe uma requisição POST e grava os dados em uma tabela, isso envolve DML. E quando chega um GET para buscar informações, é executada uma consulta DQL. Essas coisas acontecem automaticamente via framework, mas é importante saber o nome e o papel de cada tipo de comando.



Por fim, temos o JPQL (Java Persistence Query Language). Ela é a linguagem de consultas orientadas a objetos definida pela especificação JPA/Jakarta Persistence. Em vez de trabalhar diretamente com tabelas e colunas, o JPQL opera sobre classes e atributos, o que ajuda a abstrair o banco de dados. Quando usamos Jakarta Persistence em conjunto com o Hibernate, as consultas JPQL são traduzidas para SQL (normalmente DQL) e executadas via JDBC no banco de dados.



A tabela foi criada para que seja mais claro e objetivo a função de cada item que foi mencionado.





















































Conceito/Ferramenta Tipo/nível ​Papel principal
ORM Conceito/técnica Mapear objetos, tabelas, abstraindo SQL
Jakarta Persistence (JPA) Especificação Java Define API padrão de ORM em Java. ​
Hibernate Implementação ORM Implementa Jakarta Persistence + features extras
JDBC API de baixo nível Conectividade e execução de SQL no Java
DDL Categoria de comandos SQL Define estrutura (CREATE, ALTER, DROP)
DML Categoria de comandos SQL Manipula dados (INSERT, UPDATE, DELETE)
DQL Categoria de comandos SQL Consulta dados (SELECT)
JPQL Linguagem de consulta JPA Consulta entidades em vez de tabelas


Para tornar mais claro o entendimento no cotidiano do trabalho foi criado um fluxo para melhor entendimento em cada etapa da relação do Java com banco de dados.



Fluxo aplicação java

Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten ORM, JPA, Hibernate, JDBC, JPQL, DDL, DML e DQL: descomplicando a sopa de letrinhas do Java

Thematisch verwandte Begriffe: Hibernate, JDBC, JPQL, descomplicando · 6 Treffer

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-58268 | SIPGO is a library for writing SIP services in the GO language. Prior to…
Advisory →
TTS Reader • tsecurity.de Voice
tsecurity.de Icon
tsecurity.de App
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag
Themen-Radar & Intelligence Matrix
Echtzeit-Taxonomie nach Angriffsvektoren & Plattformen

tsecurity.de Live Threat Radar

🔴 LIVE RADAR
MONITORING
AKTIV
CVE-DATENBANK
LIVE
🔍
Community Radar & Live Chat
Sentinel Bot online • Live-Stream
Dein Cluster: Security Explorer
Match:
lädt…
Verbindung zum Community-Stream wird aufgebaut...
Bearbeitungsmodus — Senden überschreibt deine Nachricht
Community-Puls — was gerade passiert
lädt…
Aktivitäten deiner Analysten
lädt…
Neues Thema oder Eilmeldung einreichen

Reiche interessante Links, Zero-Days oder Debatten ein. Die Community entscheidet per Upvote über die Veröffentlichung.

Heiß diskutierte Einreichungen
🔖 Gespeicherte Artikel
📂 Keine gespeicherten Artikel vorhanden.
Zurück Ziehen Vor
Links: vorheriger Artikel Rechts: nächster Artikel unten: schließen
News NIS-2 Frühwarnung Tier-1 Intel ⏱️ 3 Min vor 10 Min
Artikeldaten werden geladen...

Zurück: vorheriger Vor: nächster
↗ Original-Quelle
Social Reaktionen Deine Reaktion zählt
Einstufung & Relevanz-Poll 0 Stimmen
In sozialen Netzwerken teilen 1-Klick