summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/odiparpack/back/odiparback/student/StudentController.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/odiparpack/back/odiparback/student/StudentController.java')
-rw-r--r--src/main/java/com/odiparpack/back/odiparback/student/StudentController.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/main/java/com/odiparpack/back/odiparback/student/StudentController.java b/src/main/java/com/odiparpack/back/odiparback/student/StudentController.java
new file mode 100644
index 0000000..ce3e6e0
--- /dev/null
+++ b/src/main/java/com/odiparpack/back/odiparback/student/StudentController.java
@@ -0,0 +1,41 @@
+package com.odiparpack.back.odiparback.student;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping(path = "api/v1/student")
+public class StudentController {
+
+ private final StudentService studentService;
+
+ @Autowired
+ public StudentController(StudentService studentService) {
+ this.studentService = studentService;
+ }
+
+ @GetMapping
+ public List<Student> getStudents() {
+ return studentService.getStudents();
+ }
+
+ @PostMapping
+ public void registerNewStudent(@RequestBody Student student) {
+ studentService.addNewStudent(student);
+ }
+
+ @DeleteMapping(path = "{studentId}")
+ public void deleteStudent(@PathVariable("studentId") Long studentId) {
+ studentService.deleteStudent(studentId);
+ }
+
+ @PutMapping(path = "{studentId}")
+ public void updateStudent(
+ @PathVariable Long studentId,
+ @RequestParam(required = false) String name,
+ @RequestParam(required = false) String email) {
+ studentService.updateStudent(studentId, name, email);
+ }
+}