From 264fc34a66aeb9df8b9247fd02d1036a5b9ea530 Mon Sep 17 00:00:00 2001
From: Laurine <lenetlaurine@gmail.com>
Date: Wed, 4 Oct 2023 10:05:56 +0200
Subject: [PATCH] 6- Spring

---
 pom.xml                                       | 22 ++++++++++++-------
 .../com/example/livecodingjavaspring/App.java | 12 +++++-----
 .../com/example/livecodingjavaspring/Cli.java | 22 +++++++++++--------
 .../example/livecodingjavaspring/UserDao.java |  4 +++-
 4 files changed, 36 insertions(+), 24 deletions(-)

diff --git a/pom.xml b/pom.xml
index 0225b3b..c0fd60e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,14 +17,20 @@
 		<java.version>17</java.version>
 	</properties>
 	<dependencies>
-<!--		<dependency>-->
-<!--			<groupId>org.springframework.boot</groupId>-->
-<!--			<artifactId>spring-boot-starter-data-jpa</artifactId>-->
-<!--		</dependency>-->
-<!--		<dependency>-->
-<!--			<groupId>org.springframework.boot</groupId>-->
-<!--			<artifactId>spring-boot-starter-web</artifactId>-->
-<!--		</dependency>-->
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-data-jpa</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-web</artifactId>
+		</dependency>
+		<dependency>
+		        <groupId>org.projectlombok</groupId>
+		        <artifactId>lombok</artifactId>
+		        <version>1.18.20</version>
+		        <scope>provided</scope>
+		</dependency>
 
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
diff --git a/src/main/java/com/example/livecodingjavaspring/App.java b/src/main/java/com/example/livecodingjavaspring/App.java
index 4920daa..387190c 100644
--- a/src/main/java/com/example/livecodingjavaspring/App.java
+++ b/src/main/java/com/example/livecodingjavaspring/App.java
@@ -1,13 +1,13 @@
 package com.example.livecodingjavaspring;
 
-import java.util.ArrayList;
-import java.util.List;
+import org.springframework.boot.WebApplicationType;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+import org.springframework.boot.builder.SpringApplicationBuilder;
 
+@SpringBootApplication(exclude={ DataSourceAutoConfiguration.class })
 public class App {
     public static void main(String[] args) {
-        UserDao userDao = new UserDao();
-        List<User> users= userDao.createDatabase();
-        Cli cli = new Cli(users);
-        cli.run();
+        new SpringApplicationBuilder(App.class).web(WebApplicationType.NONE).run(args);
     }
 }
diff --git a/src/main/java/com/example/livecodingjavaspring/Cli.java b/src/main/java/com/example/livecodingjavaspring/Cli.java
index 82c0d63..4e6e4ea 100644
--- a/src/main/java/com/example/livecodingjavaspring/Cli.java
+++ b/src/main/java/com/example/livecodingjavaspring/Cli.java
@@ -1,16 +1,20 @@
 package com.example.livecodingjavaspring;
 
+import lombok.RequiredArgsConstructor;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.stereotype.Component;
+
 import java.util.List;
 import java.util.Scanner;
-
-public class Cli {
-    private final List<User> users;
-
-    public Cli(List<User> users) {
-        this.users = users;
-    }
-
-    public void run() {
+@Component
+@RequiredArgsConstructor
+public class Cli implements CommandLineRunner {
+    private List<User> users;
+    private final UserDao userDao;
+
+    @Override
+    public void run(String... args) {
+        users = userDao.createDatabase();
         int choice = -1;
         while (choice != 0) {
             Scanner scanner = new Scanner(System.in);
diff --git a/src/main/java/com/example/livecodingjavaspring/UserDao.java b/src/main/java/com/example/livecodingjavaspring/UserDao.java
index c5f3891..6a24db2 100644
--- a/src/main/java/com/example/livecodingjavaspring/UserDao.java
+++ b/src/main/java/com/example/livecodingjavaspring/UserDao.java
@@ -1,8 +1,10 @@
 package com.example.livecodingjavaspring;
 
+import org.springframework.stereotype.Service;
+
 import java.util.ArrayList;
 import java.util.List;
-
+@Service
 public class UserDao {
 
     public List<User> createDatabase() {
-- 
GitLab