전체 글474 자바 코드로 직접 스프링 빈 등록하기 기존 Repository, Service 클래스 내부에 어노테이션( @Repository @Autowired @Service )을 주석처리해주고 service 패키지 안에 SpringConfig 클래스를 생성해주어 스프링 빈 등록 코드를 작성한다. package hello.hellospring.service; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuratio.. 2022. 8. 13. 컴포넌트 스캔과 자동 의존관계 설정 회원 컨트롤러에 의존관계 추가 @Autowired 어노테이션이 있으면 해당 메서드와 연관된 객체를 컨테이너에서 찾아서 연결 시켜준다. -> DI(의존성 주입) @Controller: 컨트롤러를 통해서 외부요청을 받는다 @Service: 비즈니스 로직 생성 @Repository: 데이터 저장 위의 방법은 컴포넌트 스캔 방식으로 자동 의존관계 설정한 것이다. 원래는 @Component라고 해야 하지만 각 어노테이션마다 @Component가 내장 되어있기 때문에 동작한다. MemberController 작성 package hello.hellospring.controller; import hello.hellospring.service.MemberService; import org.springframework.b.. 2022. 8. 9. 회원 서비스 테스트 작성된 회원 서비스를 테스트하는 코드 인텔리제이에서 실행코드로 테스트 코드 만드는 단축키: 해당 클래스 드래그 + ctrl + shift + t 인텔리제이 이전 실행 다시 하는 단축키: shift + f10 MemberSevice에서 MemberRepository를 외부에서 받도록 코드 수정 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import java.util.List; import java.util.Optio.. 2022. 8. 8. Optional 자바 8버전 부터 지원하는 기능으로 결과값으로 전달되는 null 데이터 처리를 가능하게 해주는 기능이다. 전달되는 데이터를 optional기능으로 한번 더 감싼다고 생각하면 될 것 같다. https://daddyprogrammer.org/post/1988/java-optional/ Java Optional 사용법 - 아빠프로그래머의 좌충우돌 개발하기! Java8에서 도입된 Optional에 대하여 살펴보겠습니다. Optional class의 목적은 null 참조 대신 Optional value로 표현되는 형식의 솔루션을 제공하는 것입니다. 즉 이전 버전까지의 Java의 고질적인 문제였던 daddyprogrammer.org 2022. 8. 7. 회원 서비스 개발 Service 패키지 생성 및 MemberService 클래스 작성 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import java.util.List; import java.util.Optional; public class MemberService { private final MemberRepository memberRepository = new MemoryMemberRepository(); /* * 회원 가입 *.. 2022. 8. 7. 회원 리포지토리 테스트 케이스 작성 본인이 작성한 기능을 junit 프레임워크를 활용해 테스트를 진행한다. 초기화하는 기능 추가 -> clearStore MemberRepository package hello.hellospring.repository; import hello.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { Member save(Member member); // Optional: null 값이 반환될 경우 처리해줌 8버전 부터 지원 Optional findById(Long id); Optional findByName(String name); List findAll(); vo.. 2022. 8. 6. 이전 1 2 3 4 5 6 7 8 ··· 79 다음