스프링(20)
-
@Configuration 스프링빈 등록
객체를 스프링 빈으로 등록할때 @Service, @Repository 와같이 annotation으로 스프링빈 등록 방법이 있다. 이 방법 말고 @Configuration 으로 스프링빈 등록 방법이 있다. package groupInfo.study.service;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import groupInfo.study.repository.MemberRepository;import groupInfo.study.repository.MemoryMemberRepository;@Configurationpublic class Sprin..
2024.05.14 -
@Configuration 스프링빈 등록
객체를 스프링 빈으로 등록할때 @Service, @Repository 와같이 annotation으로 스프링빈 등록 방법이 있다. 이 방법 말고 @Configuration 으로 스프링빈 등록 방법이 있다. package groupInfo.study.service;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import groupInfo.study.repository.MemberRepository;import groupInfo.study.repository.MemoryMemberRepository;@Configurationpublic class Sprin..
2024.05.14 -
컴포넌트 스캔으로 의존관계 설정
스프링에서 각 객체를 스프링컨테이너에 빈으로 등록해서 이중에 필요로하는 객체에서 빈을 가져다가 사용한다. 그렇게 하려면 객체를 빈으로 등록해줘야 한다. 빈으로 등록하는 방법중에서 컴포넌트 스캔 방법을 알아보자.package groupInfo.study.controller;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import groupInfo.study.service.MemberService;//@Controller 어노테이션을 넣으면 MemberController 객체를 생성해서 스피링에 넣어두고 관리한다.//스프링 컨테이너에서 빈이 관리되는것@Co..
2024.05.13 -
회원 레파지토리 테스트케이스 작성
회원을 관리하는 repository를 만들었다. 일단 repository를 interface로 선언하여 repository를 구현하는 객체를 유연하게 바꿀수 있도록 한다. MemberRepository.java package groupInfo.study.repository; import java.util.List; import java.util.Optional; import groupInfo.study.domain.Member; public interface MemberRepository { Member save(Member member); Optional findById(Long id); Optional findByName(String name); List findAll(); //Optional로 감싸..
2024.03.23 -
스프링부트 웹 개발 방식(api)
결론부터 말하면 우리가 브라우저에서 서버로 요청을 보내면 controller에서 요청을 받아 @ResponseBody 를 이용해 객체를 응답 body 부분에 담아서 응답해주는걸 api 방식이라고 한다. 밑에 예시를 봐보자. 1) 요청을 보냄(url) ex1) http://localhost/hello-json?name=spring //문자열 반환을 위한 예시 ex2) http://localhost/hello-json //json 반환을 위한 예시 2) 서버의 controller에 요청이 매핑됨 기존에는 데이터를 받아서 viewResolver한테 넘겨주어서 화면에 렌더링 되어 반환되는데 @ResponseBody가 있는 경우 HttpMessageConverter가 동작하여 데이터를 응답 body에 담아서 반환..
2024.03.19 -
스프링부트 웹 개발방식(MVC)
mvc 공부 MVC는 Model, View, Controller의 약자이다. 과거에는 view와 controller를 하나로 합쳐서 개발했다고 한다. 예를들어 jsp 파일안에 비즈니스 로직이나 처리하는 모든 소스가 담겨 있기도 했다고 한다. 그래서 유지보수를 하는데 하나의 jsp 파일에 몇천줄의 소스를 보고 유지보수를 해야한다. 엄청나게 비효율적이고 가독성도 떨어지고 문제가 많다. MVC 패턴은 View와 Controller 가 분리되어 View는 화면과 관련된 소스만 있고 Controller에서는 비즈니스 로직을 처리하는 소스만 있어서 편리하게 개발 할 수 있다. 예시 1) 사용자가 url 요청을 보낸다. http://localhost/study-mvc?name=mvc 2) Controller 가 요청..
2024.02.18