전체 글360 회원 관리 예제 - 웹 MVC 개발 | 회원 웹 기능 - 홈 화면 추가 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 회원 웹 기능 - 홈 화면 추가 1. 홈 컨트롤러 추가 HomeController클래스를 생성하여 @Controller을 붙인 후 @GetMapping("/")을 지정하여 홈 화면을 설정, return값으로 home.html에 연결되도록 한다 2. 회원 관리용 홈 resources/templates - home.html Hello Spring 회원 기능 회원 가입 회원 목록 3. 서버 실행 내가 만들고 있는 Application의 근본인 HelloSpringApplication에 main메서드가 존재 컨트롤러가 정적 파일보다 우선순위가 높다 그래서 기존에 만들었던 index.html가.. 2022. 2. 25. 스프링 빈과 의존관계 - 자바 코드로 직접 스프링 빈 등록하기 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 자바 코드로 직접 스프링 빈 등록하기 회원 서비스와 회원 리포지토리의 @Service, @Repository, @Autowired 애노테이션을 제거하고 진행한다. Service의 @Service, @Autowired와 Repository의 @Repository, @AutowiredController는 그대로 둔다 → Controller는 컴포넌트 스캔으로 컨테이너에 올라가고, 때문에 @Controller와 @Autowired가 사용된다 ˙ SpringConfig클래스 생성 @Configuration @Bean 실습에서 메모리 리포지토리를 다른 리포지토리로 변경할 예정이므로, 컴포넌트 .. 2022. 2. 25. 스프링 빈과 의존관계 - 컴포넌트 스캔과 자동 의존관계 설정 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 컴포넌트 스캔과 자동 의존관계 설정 회원 컨트롤러가 회원 서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비 1. MemberController클래스 생성 @Controller 애노테이션이 있으면 스프링이 뜰 때 스프링 컨테이너에 등록이 되며, 컨트롤러가 컨테이너를 관리하게 된다 Controller의 생성자가 실행된다 참고: helloController는 스프링이 제공하는 컨트롤러여서 스프링 빈으로 자동 등록 @Controller가 있으면 자동 등록됨 2. MemberService 객체 MemberController는 MemberService 객체가 필요하지만 new를 통해 생.. 2022. 2. 25. 회원 관리 예제 - 백엔드 개발 / 회원 서비스 테스트 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 1. 테스트 케이스 파일 만들기 ˙ 테스트의 경우 한글 이름을 많이 사용한다 ˙ given, when, then 기법 @Test void 회원가입() { //given //when //then } 2. 회원가입 테스트 메서드 1) 가입 2) 중복 예외가 잘 동작하는지 테스트 ˙ try-catch 방법 ˙ 혹은 assertThrows 메서드 assertThrows(Class classType, Executable executable) 첫 번째 인자: 발생할 예외 클래스의 Class 타입 executable을 실행하여 예외가 발생할 경우 classType과 발생된 Exception이 같은.. 2022. 2. 23. 회원 관리 예제 - 백엔드 개발 / 회원 서비스 개발 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 1. service패키지 - MemberService클래스 생성 2. 회원 가입 기능 작성 1) validateDuplicateMember 메서드 - 로직 작성 과정 Optional result = memberRepository.findByName(member.getName()); result.ifPresent(m -> { //만약 m(member)에 Null이 아닌 값이 있으면 throw new IllegalAccessException("이미 존재하는 회원입니다."); }); ˙ Optional에는 편리한 여러 메서드가 존재하므로 Null이 발생할 가능성이 있다면 해당 객체를 감싸 .. 2022. 2. 23. 회원 관리 예제 - 백엔드 개발 / 회원 리포지토리 테스트 케이스 작성 이 글은 김영한 님의 스프링 입문 강의(https://inf.run/hcic)를 수강하며 학습한 내용을 정리한 글입니다. 3. 회원 리포지토리 테스트 케이스 작성 1. 자바의 main 메서드로 실행 2. 웹 애플리케이션의 컨트롤러를 통해 해당 기능 실행 → 단점: 준비하고 실행하는 데 오래 걸리고, 반복 실행하기 어려우며 여러 테스트를 한번에 실행하기 어렵다 자바는 JUnit이라는 프레임워크로 테스트를 실행해서 이러한 문제를 해결한다. 1) src/test/java - repository 패키지 - MemoryMemberRepositoryTest클래스 생성 2) repository 이름으로 MemoryMemberRepository 객체 생성 3) 테스트 할 메서드 앞에 @Test 어노테이션을 붙여 준다 .. 2022. 2. 23. 이전 1 ··· 53 54 55 56 57 58 59 60 다음