Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

deepak-kumbhar/spring-data-rest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

5 Commits

Repository files navigation

SpringDataRest

Spring data rest example using spring boot + mysql

In this example you will learn the basics of Spring data rest, where you can perform simple CRUD operations.

Features

  • Fetch all users
  • Fetch Specific users
  • Fetch users with pagination and sorting
  • Search user by email
  • Save user

Below is some JSON request and response

Fetch all user

URL: http://localhost:8080/users

Method: GET

Response:

{
 "_embedded" : {
 "users" : [ {
 "name" : "Deepak",
 "email" : "deep@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/1"
 },
 "user" : {
 "href" : "http://localhost:8080/users/1"
 }
 }
 }, {
 "name" : "Prajapati",
 "email" : "praj@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/2"
 },
 "user" : {
 "href" : "http://localhost:8080/users/2"
 }
 }
 } ]
 },
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users"
 },
 "profile" : {
 "href" : "http://localhost:8080/profile/users"
 }
 },
 "page" : {
 "size" : 20,
 "totalElements" : 2,
 "totalPages" : 1,
 "number" : 0
 }
}

Fetch specific user

URL: http://localhost:8080/users/1

Method: GET

Response:

{
 "name" : "Deepak",
 "email" : "deep@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/1"
 },
 "user" : {
 "href" : "http://localhost:8080/users/1"
 }
 }
}

Fetch users with pagination and sorting

URL: http://localhost:8080/users?page=0&size=2&sort=name,desc

Method: GET

Response:

{
 "_embedded" : {
 "users" : [ {
 "name" : "Prajapati",
 "email" : "praj@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/2"
 },
 "user" : {
 "href" : "http://localhost:8080/users/2"
 }
 }
 }, {
 "name" : "Deepak",
 "email" : "deep@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/1"
 },
 "user" : {
 "href" : "http://localhost:8080/users/1"
 }
 }
 } ]
 },
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users?page=0&size=2&sort=name,desc"
 },
 "profile" : {
 "href" : "http://localhost:8080/profile/users"
 }
 },
 "page" : {
 "size" : 2,
 "totalElements" : 2,
 "totalPages" : 1,
 "number" : 0
 }
}

Search user by email

URL: http://localhost:8080/users/search/findByEmail?email=deep@gmail.com

Method: GET

Response:

{
 "name" : "Deepak",
 "email" : "deep@gmail.com",
 "_links" : {
 "self" : {
 "href" : "http://localhost:8080/users/1"
 },
 "user" : {
 "href" : "http://localhost:8080/users/1"
 }
 }
}

Save user

URL: http://localhost:8080/users/

Method: POST

Request:

{
 "name":"Ramesh",
 "email":"ramesh@gmail.com"
}

Response:

{
 "name": "Ramesh",
 "email": "ramesh@gmail.com",
 "_links": {
 "self": {
 "href": "http://localhost:8080/users/3"
 },
 "user": {
 "href": "http://localhost:8080/users/3"
 }
 }
}

Required dependency

 <dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-data-rest</artifactId>
	</dependency>

Feel free to fork the repostiory and leave the star😊

Thank You!

AltStyle によって変換されたページ (->オリジナル) /