added swagger ui and corrected the notes get api

This commit is contained in:
2026-01-03 09:46:28 +00:00
parent 0fba48b7ff
commit 801167b5db
4 changed files with 31 additions and 18 deletions

View File

@@ -52,6 +52,12 @@
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.0.2</version>
</dependency>
</dependencies> </dependencies>
<build> <build>

View File

@@ -8,22 +8,23 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.zaine.app.model.Notes; import org.zaine.app.model.Notes;
import org.zaine.app.repositories.NotesRepository; import org.zaine.app.service.NotesService;
import java.util.List; import java.util.List;
@RestController @RestController
public class NotesController { public class NotesController {
@Autowired @Autowired
private NotesRepository notesRepository; private NotesService notesService;
@GetMapping("/notes") @GetMapping("/notes")
public List<Notes> getAllNotes() { public List<Notes> getAllNotes() {
return notesRepository.findAll(); return notesService.getAllNotes();
} }
@PostMapping("/notes") @PostMapping("/notes")
public Notes createNote(@RequestBody Notes note) { public Notes createNote(@RequestBody Notes note) {
return notesRepository.save(note); return notesService.createNote(note);
} }

View File

@@ -5,9 +5,7 @@ import jakarta.persistence.Entity;
import jakarta.persistence.Id; import jakarta.persistence.Id;
import jakarta.persistence.Table; import jakarta.persistence.Table;
import jakarta.persistence.GeneratedValue; import jakarta.persistence.GeneratedValue;
import org.hibernate.annotations.UuidGenerator;
import java.sql.Date;
import java.time.Instant; import java.time.Instant;
import java.util.UUID; import java.util.UUID;
@@ -17,6 +15,7 @@ public class Notes {
@Id @Id
@GeneratedValue @GeneratedValue
@Column(name="id")
private UUID id; private UUID id;
@Column(name="content") @Column(name="content")
@@ -26,12 +25,7 @@ public class Notes {
private String authorName; private String authorName;
@Column(name="created_at") @Column(name="created_at")
private Date createdAt; private Instant createdAt;
public Notes() {
this.createdAt = new Date(System.currentTimeMillis());
}
public UUID getId() { public UUID getId() {
return id; return id;
@@ -53,7 +47,9 @@ public class Notes {
this.authorName = authorName; this.authorName = authorName;
} }
public Date getCreatedAt() { public Instant getCreatedAt() {
return createdAt; return createdAt;
} }
} }

View File

@@ -1,17 +1,27 @@
package org.zaine.app.service; package org.zaine.app.service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.logging.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.zaine.app.model.Notes; import org.zaine.app.model.Notes;
import org.zaine.app.repositories.NotesRepository;
@Service @Service
public class NotesService { public class NotesService {
private static List<Notes> notesList = new ArrayList<>(); private static final Logger logger = Logger.getLogger(NotesService.class.getName());
@Autowired
private NotesRepository notesRepository;
public List<Notes> getAllNotes() { public List<Notes> getAllNotes() {
return notesList; return notesRepository.findAll();
}
public Notes createNote(Notes note) {
logger.info("Creating note with content: " + note.getContent());
return notesRepository.save(note);
} }
} }