diff --git a/spring-lesson/pom.xml b/spring-lesson/pom.xml index 7ba811b..5e426b6 100644 --- a/spring-lesson/pom.xml +++ b/spring-lesson/pom.xml @@ -9,10 +9,10 @@ com.example - spring-lesson + Spring-lesson 0.0.1-SNAPSHOT war - spring-lesson + Spring-lesson @@ -31,10 +31,7 @@ 21 - - org.springframework.boot - spring-boot-starter-data-jpa - + org.springframework.boot spring-boot-starter-webmvc @@ -46,38 +43,20 @@ runtime true - - com.mysql - mysql-connector-j - runtime - + org.projectlombok lombok true + org.springframework.boot spring-boot-starter-tomcat provided - - org.springframework.boot - spring-boot-starter-data-jpa-test - test - - - org.springframework.boot - spring-boot-starter-webmvc-test - test - - - com.example - Spring-lesson-Q2 - 0.0.1-SNAPSHOT - - + diff --git a/spring-lesson/src/main/java/com/example/demo/SpringLessonApplication.java b/spring-lesson/src/main/java/com/example/demo/SpringLessonApplication.java index 8a2618b..737f016 100644 --- a/spring-lesson/src/main/java/com/example/demo/SpringLessonApplication.java +++ b/spring-lesson/src/main/java/com/example/demo/SpringLessonApplication.java @@ -2,7 +2,7 @@ package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.context.ConfigurableApplicationContext; +import org.springframework.context.ApplicationContext; import com.example.demo.presentation.Q1View; @@ -10,9 +10,9 @@ import com.example.demo.presentation.Q1View; public class SpringLessonApplication { public static void main(String[] args) { - ConfigurableApplicationContext context = SpringApplication.run(SpringLessonApplication.class, args); - // Q1View Bean ကို ရယူပြီး Execute လုပ်ခြင်း + ApplicationContext context = SpringApplication.run(SpringLessonApplication.class, args); + Q1View view = context.getBean(Q1View.class); view.display(); } diff --git a/spring-lesson/src/main/java/com/example/demo/application/Q1Controller.java b/spring-lesson/src/main/java/com/example/demo/application/Q1Controller.java index 32424d0..839a192 100644 --- a/spring-lesson/src/main/java/com/example/demo/application/Q1Controller.java +++ b/spring-lesson/src/main/java/com/example/demo/application/Q1Controller.java @@ -9,15 +9,21 @@ import com.example.demo.service.Q1Service; @Controller public class Q1Controller { + @Autowired - private Q1Service q1Service; - @Autowired - private Q1Logic q1Logic; - - public String execute (String mailAddress, String password) { - Q1Entity entity =q1Service.processService(mailAddress, password); - - return q1Logic.formatUserDetail(entity); + Q1Service service; + + Q1Logic logic = new Q1Logic(); + + public Q1Entity show(String mailAddress, String password) { + String result = logic.check(mailAddress, password); + + if (!result.equals("OK")) { + System.out.println(result); + return null; + } + + return service.getUserData(mailAddress, password); } } diff --git a/spring-lesson/src/main/java/com/example/demo/domain/Q1Entity.java b/spring-lesson/src/main/java/com/example/demo/domain/Q1Entity.java index bbc7638..d0ad124 100644 --- a/spring-lesson/src/main/java/com/example/demo/domain/Q1Entity.java +++ b/spring-lesson/src/main/java/com/example/demo/domain/Q1Entity.java @@ -1,24 +1,20 @@ package com.example.demo.domain; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; - -@Entity public class Q1Entity { - @Id + private String mailAddress; private String password; + //↓これなんでいるんやろう public Q1Entity() { } - // Constructor public Q1Entity(String mailAddress, String password) { this.mailAddress = mailAddress; this.password = password; } - // Getter & Setter + //getter・setter public String getMailAddress() { return mailAddress; } @@ -34,4 +30,5 @@ public class Q1Entity { public void setPassword(String password) { this.password = password; } + } diff --git a/spring-lesson/src/main/java/com/example/demo/logic/Q1Logic.java b/spring-lesson/src/main/java/com/example/demo/logic/Q1Logic.java index ddcb131..7077375 100644 --- a/spring-lesson/src/main/java/com/example/demo/logic/Q1Logic.java +++ b/spring-lesson/src/main/java/com/example/demo/logic/Q1Logic.java @@ -1,13 +1,19 @@ package com.example.demo.logic; -import org.springframework.stereotype.Component; - -import com.example.demo.domain.Q1Entity; - -@Component public class Q1Logic { - public String formatUserDetail(Q1Entity entity) { - return"メールアドレス:"+entity.getMailAddress()+" パスワード:"+entity.getPassword(); + public String check(String mailAddress, String password) { + + //メールアドレスが256文字より大きい + if (mailAddress.length() > 256) { + return "メールアドレスもしくはパスワードが不正です"; + } + + //パスワードが8文字より小さい + if (password.length() < 8) { + return "メールアドレスもしくはパスワードが不正です"; + } + + return "OK"; } } diff --git a/spring-lesson/src/main/java/com/example/demo/persistence/Q1Dao.java b/spring-lesson/src/main/java/com/example/demo/persistence/Q1Dao.java index 17b8903..82ded64 100644 --- a/spring-lesson/src/main/java/com/example/demo/persistence/Q1Dao.java +++ b/spring-lesson/src/main/java/com/example/demo/persistence/Q1Dao.java @@ -4,12 +4,14 @@ import org.springframework.stereotype.Repository; import com.example.demo.domain.Q1Entity; -@Repository +@Repository //←「このクラスはDAOとして使います」 public class Q1Dao { - private Q1Dao q1Dao; - public Q1Entity createEntity (String mailAddress, String password) { - return new Q1Entity(mailAddress, password); + public Q1Entity findData(String mailAddress, String password) { - } + Q1Entity entity = new Q1Entity(); + entity.setMailAddress(mailAddress); + entity.setPassword(password); + return entity; + } } diff --git a/spring-lesson/src/main/java/com/example/demo/presentation/Q1View.java b/spring-lesson/src/main/java/com/example/demo/presentation/Q1View.java index 2d3a08c..168d26f 100644 --- a/spring-lesson/src/main/java/com/example/demo/presentation/Q1View.java +++ b/spring-lesson/src/main/java/com/example/demo/presentation/Q1View.java @@ -1,3 +1,4 @@ +//メールアドレスとパスワードを入力する package com.example.demo.presentation; import java.util.Scanner; @@ -6,21 +7,31 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.example.demo.application.Q1Controller; +import com.example.demo.domain.Q1Entity; @Component public class Q1View { - @Autowired - private Q1Controller q1Controller; - public void display() { - Scanner scanner = new Scanner(System.in); - System.out.println("メールアドレス入力してください。"); - String mailAdress = scanner.nextLine(); - System.out.println("パスワード入力してください。"); - String password = scanner.nextLine(); + @Autowired + Q1Controller controller; - String result = q1Controller.execute(mailAdress, password); - System.out.println("======結果====="); - System.out.println(result); - } -} \ No newline at end of file + public void display() { + + Scanner scanner = new Scanner(System.in); + + System.out.println("メールアドレス:"); + String mailAddress = scanner.nextLine(); + + System.out.println("パスワード:"); + String password = scanner.nextLine(); + + Q1Entity entity = controller.show(mailAddress, password); + + if (entity != null) { + System.out.println("メールアドレス:" + entity.getMailAddress()); + System.out.println("パスワード:" + entity.getPassword()); + } + + } + +} diff --git a/spring-lesson/src/main/java/com/example/demo/service/Q1Service.java b/spring-lesson/src/main/java/com/example/demo/service/Q1Service.java index 7c62a7f..e559420 100644 --- a/spring-lesson/src/main/java/com/example/demo/service/Q1Service.java +++ b/spring-lesson/src/main/java/com/example/demo/service/Q1Service.java @@ -8,10 +8,13 @@ import com.example.demo.persistence.Q1Dao; @Service public class Q1Service { - @Autowired - private Q1Dao q1Dao; - public Q1Entity processService(String mailAdress, String password) { - return q1Dao.createEntity(mailAdress,password); - } + //Q1ServiceがQ1Daoを使いたい→Q1Daoを渡しておくね + @Autowired + Q1Dao dao; + + public Q1Entity getUserData(String mailAddress, String password) { + + return dao.findData(mailAddress, password); + } }