Spring MVC + Spring Data + Hibernate + MySQL example

In this post, we are going to see integration of Spring MVC,Spring Data,hibernate and mysql CRUD example.
We have already seen Spring MVC, hibernate and mysql example in previous tutorial.
Spring Data JPA provides CRUD API, so you don’t have to write boiler plate code. You just need to create repository interface and spring will provide implementation automatically.

Spring MVC tutorial:

Here are steps to create a project with Spring MVC , Spring data, hibernate and mySQL crud example.

Source code:

1) Create a dynamic web project using maven in eclipse named “SpringMVCSpringDataHibernateExample”

Maven dependencies

2) We will use Spring 4 and hibernate 4 for this project.

pom.xml

Spring application configuration:

3) Change web.xml as below:


4) create a xml file named spring-servlet.xml in /WEB-INF/ folder.
Please change context:component-scan if you want to use different package for spring to search for controller.Please refer to spring mvc hello world example for more understanding.

In Spring-servlet.xml, we have done hibernate and spring data configuration.
dataSource bean is used to specify java data source. We need to provide driver, URL , Username and Password.
transactionManager bean is used to configure hibernate transaction manager.

Create a applicationcontext.xml in WEB-INF folder, this file is used for bean configuration as we are using spring-servlet.xml for bean configuration , we will keep this file empty.

Create bean class

4) Create a bean name “Country.java” in org.arpit.java2blog.bean.

@Entity is used for making a persistent pojo class.For this java class,you will have corresponding table in database. @Column is used to map annotated attribute to corresponding column in table. So Create Country table in mysql database with following code:

Create Controller

5) Create a controller named “CountryController.java” in package org.arpit.java2blog.controller

Create Repository interface

Create a interface called CountryRepository.java in package org.arpit.java2blog.repository.  You don’t have to provide implementation of this interface. Spring automatically provides implementation of common methods such as save, delete , findOne once you extends to CrudRepository Interface.

CrudRepository has two generic argument.
Country: It is for what type of entity you are going to save in database.
Integer :  It is datatype of identifier for entity object.

Create Service class

6) Create a class CountryService.java in package org.arpit.java2blog.service
It is service level class. It will call DAO layer class.

@Service is specialised component annotation which is used to create bean at Service layer.

Create view

Create view called countryDetails.jsp in WEB-INF/view/ folder.

8) It ‘s time to do maven build.

Right click on project -> Run as -> Maven build

Maven build in eclipse
9) Provide goals as clean install (given below) and click on run
Maven build in eclipse

Run the application

10) Right click on project -> run as -> run on server
Select apache tomcat and click on finish
11)  Now lets hit below URL to getAllCountries.
http://localhost:8080/SpringMVCSpringDataHibernateExample/getAllCountries
You will get below screen:

Empty Country List Spring MVC hibernate

As you can see, we did not add any country to the list, so it is empty.
Lets add Country named India to country list and click submit.
Similarly we will add China , Bhutan and Nepal respectively and you will see below screen.

All Country List Spring MVC hibernate


Lets edit population of Bhutan to 15000. Click on edit button corresponds to Bhutan.


When you click on submit, you will get below screen.

Lets delete country China from above list, click on delete button corresponds to 2nd row.
You will see below screen.

As you can see, china got deleted from above list.

Project structure

Spring MVC Spring data project structure


We are done with Spring MVC, Spring data hibernate MySQL CRUD example. If you are still facing any issue, please comment.


import_contacts

You may also like:


import_contacts

You may also like:

Related Posts

  • 10 July

    Spring MVC tutorial

    In this post, we will learn about Spring MVC tutorial. Spring MVC framework is a robust Model view controller framework which helps us to develop a loosely coupled web application. It separates different aspects of web applications with the help of MVC architecture. Model: Model carries application data. It generally includes POJO in the form […]

  • 26 August

    Spring MVC Exceptional Handling using @ControllerAdvice example

    In this post , we will see how to do exceptional handling in Spring MVC using @ControllerAdvice. In previous post, we have already seen how to use @ExceptionHandler to handle exceptions but @ExceptionHandler can be applied to one controller only but what if you want to handle exception globally i.e. across multiple controller. You can use @ControllerAdvice to handle […]

  • 26 August

    Spring MVC Exceptional Handling using @ExceptionHandler example

    In this post , we will see how to do exceptional handling in Spring MVC using @ExceptionalHandler. You can use @ExceptionHandler to redirect to error view when exception occurs. Lets understand this with the help of example: Source code: Download click to begin 20KB .zip 1) Create a dynamic web project using maven in eclipse named “SpringMVCExceptionalHandlerExample” Maven dependencies 2) Our […]

  • 25 August

    Spring MVC Hibernate MySQL CRUD example

    In this post, we are going to see integration of Spring MVC, hibernate and mysql CRUD example. We have already seen integration of Spring Rest with hibernate in previous tutorial. Spring MVC Tutorial Spring MVC hello world example Spring MVC Hibernate MySQL example Spring MVC Spring Data example Spring MVC Interceptor example Spring MVC angularjs […]

  • 23 August

    Spring MVC + log4j example

    In this post, we will see how to integrate Spring MVC with log4j. Spring MVC tutorial: Spring MVC hello world example Spring MVC Hibernate MySQL example Spring MVC interceptor example Spring MVC angularjs example Spring MVC @RequestMapping example Spring Component,Service, Repository and Controller example Spring MVC @ModelAttribute annotation example Spring MVC @RestController annotation example Spring […]

  • 19 August

    Spring @RestController example

    In this post,  we are going to see another important annotation called @RestController. It is generally used while working with Spring restful Web services implementation. Spring MVC tutorial: Spring MVC hello world example Spring MVC Hibernate MySQL example Spring MVC interceptor example Spring MVC angularjs example Spring MVC @RequestMapping example Spring Component,Service, Repository and Controller […]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.