AOP란?공통 관심 사항을 분리하여 원하는 곳에 적용시키는 기술 AOP가 필요한 경우https://github.com/jong-seoung/Spring-Introduction/commit/afbfacc71430d331d2191051b7f5ddc4551c9a2d AOP가 필요한 상황을 가정 · jong-seoung/Spring-Introduction@afbfacc@@ -25,8 +25,17 @@ public MemberService(MemberRepository memberRepository){github.comAOP 적용AOP를 이용하여 실행 시간을 분리하여 적용시켰을 때의 장점회원가입, 회원 조회등 핵심 관심사항과 시간을 측정하는 공통 관심 사항을 분리한다.시간을 측정하는 로직을 별도의 공통 로직으로 ..
Spring
홈 화면 추가https://github.com/jong-seoung/Spring-Introduction/commit/222b8c9577cea25ba76d55a86fe3b52e49d0b02d 홈 화면 추가 · jong-seoung/Spring-Introduction@222b8c9+ import org.springframework.web.bind.annotation.GetMapping;github.com회원 등록 기능https://github.com/jong-seoung/Spring-Introduction/commit/829fb832fcc8178402fe1255ec1a1a730e2d6339 회원 등록 기능 · jong-seoung/Spring-Introduction@829fb83@@ -13,4 +16,19 ..
컴포넌트 스캔과 자동 의존관계 설정생성자에 @Autowired가 있으면 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어준다. 이렇게 객체 의존 관계를 외부에서 넣어주는 것을 DI, 의존성 주입이라고 한다. https://github.com/jong-seoung/Spring-Introduction/commit/70bfe821bc67af6fd63b1c6794135dd95e32ce91 store = new HashMap();" data-og-host="github.com" data-og-source-url="https://github.com/jong-seoung/Spring-Introduction/commit/70bfe821bc67af6fd63b1c6794135dd95e32ce91" data-og-ur..
비지니스 요구사항 정리Spring 기초를 맛보기 위한 내용이므로 간단한 데이터를 선정하여 작성 데이터 - 회원ID, 이름기능 - 회원 등록, 조회아직 데이터 저장소가 선정되지 않음 일반적인 웹 어플리케이션 계층 구조컨트롤러 - 웹 MVC의 컨트롤러 역할서비스 - 핵심 비지니스 로직 구현리포지토리 - 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리도메인 - 비지니스 도메인 객체, 예) 회원, 주문, 쿠폰 등 주로 데이터베이스에 저장하고 관리됨 클래스 의존 관계현재 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계데이터 베이스 저장소는 다양한 저장소를 고민중이라고 가정개발을 진행하기 위해 초기 개발 단계에서는 구현체로 가벼운 메모리 기반의 데이터 저장소 사용 ..

정적 콘텐츠정적 콘텐츠는 말그대로 html 그 자체를 웹에 띄워준다.// resources/static/hello-static.html정적 컨텐츠 입니다.http://localhost:8080/hello-static.html 로 들어가면 페이지를 확인할 수 있다.MVC와 템플릿 엔진MVC는 모델, 뷰, 컨트롤러를 합친 용어이다. 뷰는 화면을 그리는데 집중하고, 뷰나 컨트롤러는 비지니스 로직같은 것을 처리해야한다. // Controller@Controllerpublic class HelloController { @GetMapping("hello-mvc") public String helloMvc(@RequestParam("name") String name, Model model) { model.addAtt..