From 93138f7a163c4d3673f6b1297af354ffb1b504df Mon Sep 17 00:00:00 2001
From: Hendrik Jungnitsch <hendrik.jungnitsch@gedoplan.de>
Date: Mo, 14 Nov 2022 12:10:35 +0100
Subject: [PATCH] exercise01

---
 src/main/java/de/gedoplan/seminar/jpa/exercise/domain/Highway.java               |   19 +++++++++++++++++--
 src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java         |    4 ++--
 src/main/java/de/gedoplan/seminar/jpa/exercise/repository/HighwayRepository.java |    8 +++++++-
 3 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/src/main/java/de/gedoplan/seminar/jpa/exercise/domain/Highway.java b/src/main/java/de/gedoplan/seminar/jpa/exercise/domain/Highway.java
index 2de1fde..7f3ca9b 100644
--- a/src/main/java/de/gedoplan/seminar/jpa/exercise/domain/Highway.java
+++ b/src/main/java/de/gedoplan/seminar/jpa/exercise/domain/Highway.java
@@ -1,11 +1,23 @@
 package de.gedoplan.seminar.jpa.exercise.domain;
 
-public class Highway {
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
 
+@Entity
+@Table(name = Highway.TABLE_NAME)
+public class Highway {
+	
+	public static final String TABLE_NAME = "JPA_HIGHWAY";
+
+	@Id
 	private int id;
 	private String name;
 	private String origin;
 	private String destination;
+	
+	public Highway() {
+	}
 
 	public Highway(int id, String name, String origin, String destination) {
 		this.id = id;
@@ -46,6 +58,9 @@
 		return this.destination;
 	}
 
-
+	@Override
+	public String toString() {
+		return "Highway [id=" + id + ", name=" + name + ", origin=" + origin + ", destination=" + destination + "]";
+	}
 
 }
diff --git a/src/main/java/de/gedoplan/seminar/jpa/exercise/repository/HighwayRepository.java b/src/main/java/de/gedoplan/seminar/jpa/exercise/repository/HighwayRepository.java
index 1b42580..afdf070 100644
--- a/src/main/java/de/gedoplan/seminar/jpa/exercise/repository/HighwayRepository.java
+++ b/src/main/java/de/gedoplan/seminar/jpa/exercise/repository/HighwayRepository.java
@@ -1,5 +1,11 @@
 package de.gedoplan.seminar.jpa.exercise.repository;
 
-public interface HighwayRepository {
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+
+import de.gedoplan.seminar.jpa.exercise.domain.Highway;
+
+@Repository
+public interface HighwayRepository extends JpaRepository<Highway, Integer> {
 
 }
diff --git a/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java b/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java
index 914e1c9..03d90e7 100644
--- a/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java
+++ b/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/HighwayResource.java
@@ -38,7 +38,7 @@
   public void insert(@RequestBody Highway highway) {
     this.logger.debug("----- insert -----");
     
-    // this.highwayRepository.
+    this.highwayRepository.save(highway);
 
     this.logger.debug("Inserted: " + highway);
   }
@@ -49,7 +49,7 @@
   @GetMapping("/{ID}")
   public Highway findById(@PathVariable("ID") Integer id) {
     this.logger.debug("----- findById -----");
-    Optional<Highway> highway = Optional.empty();//this.highwayRepository.
+    Optional<Highway> highway = this.highwayRepository.findById(id);
     highway.ifPresent(h -> this.logger.debug(id+": "+h));
     return highway.orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND));
     

--
Gitblit v1.7.1