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