diff --git a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/controller/StudentController.java b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/controller/StudentController.java index 75920f8..5355383 100644 --- a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/controller/StudentController.java +++ b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/controller/StudentController.java @@ -1,18 +1,12 @@ package com.wasim.rest.api.controller; import java.util.List; +import java.util.Optional; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.wasim.rest.api.entity.Student; import com.wasim.rest.api.service.StudentService; @@ -35,9 +29,14 @@ public ResponseEntity> getAllStudent(){ return new ResponseEntity>(studentService.getAllStudent(), HttpStatus.OK); } + + @GetMapping("/getStudent/{id}") + public ResponseEntity getStudentById(@PathVariable long id){ + return new ResponseEntity(studentService.getStudentById(id), HttpStatus.OK); + } @PutMapping("/editStudent/{id}") - public ResponseEntity updateStudent(@PathVariable("id") long id, @RequestBody Student student){ + public ResponseEntity updateStudent(@PathVariable long id, @RequestBody Student student){ return new ResponseEntity(studentService.updateStudent(id, student), HttpStatus.OK); } diff --git a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/repository/StudentRepository.java b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/repository/StudentRepository.java index 13a80b4..3f9a7ed 100644 --- a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/repository/StudentRepository.java +++ b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/repository/StudentRepository.java @@ -6,4 +6,6 @@ public interface StudentRepository extends JpaRepository{ + Student getStudentById(long id); + } diff --git a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentService.java b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentService.java index 54dac01..eb3a7f8 100644 --- a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentService.java +++ b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentService.java @@ -7,9 +7,11 @@ public interface StudentService { public Student createStudent(Student student); - + public List getAllStudent(); - + + public Student getStudentById(long id); + public Student updateStudent(long id, Student student); public void deleteStudent(long id); diff --git a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentServiceImpl.java b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentServiceImpl.java index a764d48..c9fff7f 100644 --- a/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentServiceImpl.java +++ b/Spring-Boot-REST-API/src/main/java/com/wasim/rest/api/service/StudentServiceImpl.java @@ -25,6 +25,11 @@ public List getAllStudent() { return studentRepository.findAll(); } + @Override + public Student getStudentById(long id){ + return studentRepository.getStudentById(id); + } + @Override public Student updateStudent(long id, Student student) { student.setId(id);