From 0cb13aff8b01e0b3820521cfb4dbfdd400461b43 Mon Sep 17 00:00:00 2001 From: Icd-Kohi Date: Mon, 20 Jul 2026 04:04:45 -0300 Subject: [PATCH] ADD: Get student by id method --- .../rest/api/controller/StudentController.java | 17 ++++++++--------- .../rest/api/repository/StudentRepository.java | 2 ++ .../wasim/rest/api/service/StudentService.java | 6 ++++-- .../rest/api/service/StudentServiceImpl.java | 5 +++++ 4 files changed, 19 insertions(+), 11 deletions(-) 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);