Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
JDBC Introduction | JDBC Overview
Java Data Manipulation with Hibernate
course content

Conteúdo do Curso

Java Data Manipulation with Hibernate

Java Data Manipulation with Hibernate

1. JDBC Overview
2. Fundamentals of Hibernate
3. Final Touches

bookJDBC Introduction

How Applications Interact with Databases

Obviously, merely telling the compiler that we will be using an external database is not enough to connect to a database. We need tools for that.

In programming, code constantly interacts with various components, such as a server or a database; code is just a big set of instructions for a device.

For example, let's say a new user has registered on your website, and you need to store that user's data somewhere so they can log in and use the product again. There are two ways to do this:

  1. Save the user's data locally on their device in RAM, similar to how we store data in a variable. However, there's a slight catch: the user can use their profile until their device is rebooted or the RAM is cleared. After that, all information about their profile will be lost, including any purchases they made;
  2. Save the data on the server in a database: This is exactly what we'll be learning in this course. All user data or different products' information is stored in the database. When a user registers, their data is recorded in the database. Then, when the user logs in, the code sends a request to the server's database, asking it to check if that user exists. If the response is positive, the user logs in under their profile and continues working. If the server cannot find the user's data in the database, it will display an error message, suggesting that the user may not exist.

Let's look at a visualization of such interaction. First, a user registers on our website, and their data goes into the database:

Then, when the user logs in to the platform again, the database will look for the user's data, after which they can either log in or receive an error:

I think we can draw a conclusion from all of this: Everyone uses databases, storing user data and product data in them. It's reliable, fast, and convenient.

But let's answer the main question of this course: how does Java connect to a database?

The answer is JDBC.

JDBC

JDBC stands for Java Database Connectivity. It is an API that allows developers to create Java applications and connect them to databases.

In simple terms, JDBC is a tool that allows us to connect our program to a database.

Note

It's worth noting that JDBC is used all the time; it's a low-level aspect of programming. Even the ORM framework Hibernate, which we will use to create and modify databases in this course, uses JDBC.

JDBC has its own structure and hierarchy; let's take a closer look at it:

Let's take a closer look at what's happening in this diagram:

  • The JDBC API provides a link between the application and JDBC management;
  • A JDBC Driver Manager facilitates the interaction between JDBC and the database driver;
  • A JDBC Driver is a component that implements the JDBC interface for a specific DBMS. Each DBMS has its own driver. The JDBC Driver Manager is responsible for managing database drivers and establishing connections between the Java application and a specific database.

Conclusion

We can conclude that the JDBC working principle is not as complex as it may seem; in fact, it resembles the operation of a typical IT company. A Java application contacts the JDBC API, requesting communication with a database. At the same time, the JDBC API reaches out to the JDBC Driver Manager to find the appropriate driver for database communication. The JDBC Driver Manager excels at its job and selects the necessary driver for a specific DBMS, after which we connect our code to that database.

JDBC also includes various components, which serve as instructions for their use in code. We will discuss these components and their usage in the next chapter!

1. What does JDBC stand for in Java programming?
2. What is the primary role of JDBC in Java applications?
3. What is an API in the context of programming?
4. Which component in JDBC is responsible for managing database drivers and establishing connections?
5. Why might storing user data on a server database be preferable to storing it locally on the user's device?
What does JDBC stand for in Java programming?

What does JDBC stand for in Java programming?

Selecione a resposta correta

What is the primary role of JDBC in Java applications?

What is the primary role of JDBC in Java applications?

Selecione a resposta correta

What is an API in the context of programming?

What is an API in the context of programming?

Selecione a resposta correta

Which component in JDBC is responsible for managing database drivers and establishing connections?

Which component in JDBC is responsible for managing database drivers and establishing connections?

Selecione a resposta correta

Why might storing user data on a server database be preferable to storing it locally on the user's device?

Why might storing user data on a server database be preferable to storing it locally on the user's device?

Selecione algumas respostas corretas

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 2
some-alt