EDUCBA Logo

EDUCBA

MENUMENU
  • Explore
    • EDUCBA Pro
    • PRO Bundles
    • Featured Skills
    • New & Trending
    • Fresh Entries
    • Finance
    • Data Science
    • Programming and Dev
    • Excel
    • Marketing
    • HR
    • PDP
    • VFX and Design
    • Project Management
    • Exam Prep
    • All Courses
  • Blog
  • Enterprise
  • Free Courses
  • Log in
  • Sign Up
Home Software Development Software Development Tutorials Spring Tutorial spring boot jdbc
 

spring boot jdbc

Updated March 29, 2023

spring boot jdbc

 

 

Introduction to spring boot jdbc

Spring boot jdbc provides libraries and starter to connect applications with JDBC while using JDBC database-related beans like JDBC template, named parameter JDBC template, and data source are automatically configures and creating it at the time of starting a project. To use the automatically configured classes, we can Autowired them in an application.properties file, we are configuring the connection pooling and data source. If we have not chosen any option for our project, then JDBC is choosing tomcat pooling as default. JDBC is used to connect applications using JDBC.

Watch our Demo Courses and Videos

Valuation, Hadoop, Excel, Mobile Apps, Web Development & many more.

What is spring boot JDBC?

  • At the time of using JDBC, we have required only spring boot starter jdbc dependency.
  • Basically, JDBC is divided into four different packages are as follows.
  • Object
  • Data source
  • Core
  • Support
  • An object-oriented manner does JDBC database access. It will allow us to run the query and return the result by using an object. An object is also used to map the columns between query results and properties of objects.
  • JDBC data source is used in utility classes for accessing the data source. JDBC has many data source implementations to test the JDBC code.
  • The JDBC core package contains the JDBC core functionality. Many of the classes is important in this package which was contains the jdbc template, simple JDBC call, simple JDBC insert, and named parameter jdbc template.
  • The JDBC support package contains the support classes which was supporting for classes under object and core classes. An example of this package is providing the functionality of SQLException translation.
  • Using JDBC, we can implement database CRUD operations for the simple aggregations. JDBC is supporting for annotation name as query. It will also support events and MyBatis queries.
  • We can configure the java-based repository by using enable JDBC repositories annotation in JDBC.
  • JDBC is part of the spring boot framework, which was used to implement the JDBC repositories.
  • JDBC is used to support the JDBC data access layer. Therefore, it makes it easier to build an application that uses the connection pooling and accessing the data from the database server.
  • JDBC is the main API using this API; we can access the functionality like create and close the database connection.
  • We can execute all SQL queries and execute the statement and call of stored procedure.
  • To support the named parameter queries, we are using the JDBC template, which JDBC provided.

Why use Spring Boot JDBC?

  • At the time of developing the application using JDBC, we require only spring boot starter JDBC (spring-boot-starter-jdbc) dependency.
  • JDBC is automatically configures the bean of data source if we have not maintain it explicitly. If we do not require a bean or want to use the bean in our project, we need to set the property of spring.datasource.initialize as false. By default, spring.datasource.initialize parameter property is true.
  • Using JDBC, we have no need to register beans because it will automatically register beans at the time of starting our project.
  • Using JDBC, any database script which was contains the extension as .sql will gets automatically executed.
  • To develop an application by using JDBC, we have required only spring-boot starter dependency.
  • Using JDBC, we have no need to add the multiple dependencies to our project.
  • If we have not registered any beans like JDBC template, platform transaction manager, and named parameter jdbc template, it will register automatically using JDBC.
  • JDBC is providing the JdbcTemplate class, which was simplifies the development of JDBC.
  • As compare to hibernate, JDBC is efficient and more easy to use to develop applications.

Spring Boot and JDBC Template

Below examples show to set up the JDBC project template are as follows.

  • Create a project template using a spring initializer and give the following name to the project metadata.

Group – com.example
Artifact name – spring-boot-jdbc
Name – spring-boot- jdbc
Description – Project of spring-boot- jdbc
Package name – com.example.spring-boot- jdbc
Packaging – Jar
Java – 11
Dependencies – spring web.

spring boot jdbc output 1

  • After generating project extract files and open this project by using spring tool suite –

spring boot jdbc output 2

  • After opening the project using the spring tool suite, check the project and its files –

spring boot jdbc output 3

  • We need the following software to develop applications using JDBC are as follows.
  1. Maven 3.2 +
  2. JDK 1.8 or later
  3. Spring boot 2.4 or later
  4. Spring tool suite
  • To develop the application using JDBC, we need to use the spring tool suite and develop a project using maven.

 Examples

The below example shows JDBC are as follows.

  • Create database and tables 
# create database spring_boot_jdbc;
# \c spring_boot_jdbc
# create table stud (id int, name varchar(10));

output 4

  • Edit application properties file and add the database credential 

Code –

spring.datasource.url = jdbc:postgresql://localhost:5432/spring_boot_jdbc
spring.datasource.username = postgres
spring.datasource.password = postgres
spring.jpa.hibernate.ddl-auto = create-drop

spring boot jdbc output 5

  • Create spring boot JDBC application file 

Code –

@SpringBootApplication
public class SpringBootJDBC {
public static void main /* main method of spring boot JDBC application */ (String[] args) {
SpringApplication.run (SpringBootJDBC.class, args);
}
}

output 6

  • Create a controller for the JDBC application 

Code –

@RestController
public class SBJDBCController {
@Autowired
JdbcTemplate sbjdbc;
@RequestMapping("/insert")
public String index(){
sbjdbc.execute ("insert into stud values (101, 'ABC')");
}
}

output 7

  • Run the application 

output 8

  • Check the data inserted in the database table using the application 

Code –

# select * from stud;

output 9

Conclusion

JDBC database access is done in an object-oriented manner. It will allow us to run the query and return the result by using the object. JDBC is providing libraries and starters to connect applications with JDBC. JDBC is provided JdbcTemplate class to develop the application.

Recommended Articles

This is a guide to spring boot jdbc. Here we discuss What is spring boot JDBC and what is the purpose of using it, along with the templates and examples. You may also have a look at the following articles to learn more –

  1. Spring Boot RestTemplate
  2. Spring Boot OAuth2
  3. Spring Boot Profiles
  4. Spring Boot Dependencies

Primary Sidebar

Footer

Follow us!
  • EDUCBA FacebookEDUCBA TwitterEDUCBA LinkedINEDUCBA Instagram
  • EDUCBA YoutubeEDUCBA CourseraEDUCBA Udemy
APPS
EDUCBA Android AppEDUCBA iOS App
Blog
  • Blog
  • Free Tutorials
  • About us
  • Contact us
  • Log in
Courses
  • Enterprise Solutions
  • Free Courses
  • Explore Programs
  • All Courses
  • All in One Bundles
  • Sign up
Email
  • [email protected]

ISO 10004:2018 & ISO 9001:2015 Certified

© 2025 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

By continuing above step, you agree to our Terms of Use and Privacy Policy.
*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

EDUCBA Login

Forgot Password?

🚀 Limited Time Offer! - ENROLL NOW