Spring/study46 MVC 패턴에서 Service Model의 역할 MVC 패턴에서 Service Model 의 역할MVC 패턴의 핵심은 View는 자신이 요청할 Controller만 알고있으면 되고, Controller는 화면에서 넘어오는 매개변수들을 이용해 Service 객체를 호출하는 역할을 한다. Service 는 불필요하게 Http 통신을 위한 HttpServlet을 상속 받을 필요도 없는 순수한 자바 객체로 구성된다(그렇기에 Service 에 request나 response와 같은 객체를 매개변수로 받아선 안된다. 그걸 사용해야하는 작업은 컨트롤러에서 해야한다.). 그렇기에 자신을 어떤 컨트롤러가 호출하든 상관없이 필요한 매개변수만 준다면 자신의 비즈니스로직을 처리하게된다. 즉 모듈화를 통해 어디서든 재사용이 가능한 클래스파일이라는 뜻이다. 단순 Web 기반이.. 2019. 5. 31. 스프링 프레임워크 입문 -PSA(Portable Service Abstraction) PSA(Portable Service Abstraction) PSA : 교체가 용이한 서비스 추상화( 잘 만든 인터페이스 ) 확장성이 좋지 못하거나 기술에 특화돼있는 코드 : 테스트 만들기 어렵고 기술이 바뀔때마다 고치기 힘듦 스프링이 제공하는 대부분의 API가 PSA = Spring Framework는 인터페이스만 잘 알아도 쓰기 용이 @Transactional을 예로 들면 어노테이션과 그 실행 aspect 클래스가 따로 존재한다. 그 aspect는 Transaction 기술과는 독립적인 PlatformTransactionManager라는 인터페이스가 사용된 코드 PlatformTransactionManager 인터페이스의 구현체들이 바뀌더라도 TransactionAspect의 코드는 바뀌지 않는다. .. 2019. 5. 31. 스프링 프레임워크 입문 -AOP(Aspect Oriented Programming) 스프링 프레임워크 입문 -AOP(Aspect Oriented Programming) AOP : 흩어진 코드를 한 곳에 모아서 코딩하는 프로그래밍 기법 123456789101112131415161718192021222324252627흩어진 AAAA 와 BBBB class A { method a () { AAAA 오늘은 7월 4일 미국 독립 기념일이래요. BBBB } method b () { AAAA 저는 아침에 운동을 다녀와서 밥먹고 빨래를 했습니다. BBBB } }class B { method c() { AAAA 점심은 이거 찍느라 못먹었는데 저녁엔 제육볶음을 먹고 싶네요. BBBB } } Colored by Color Scriptercs 123456789101112131415161718192021222.. 2019. 5. 31. 스프링 프레임워크 입문 - IoC ( Inversion of Control ) https://www.inflearn.com/course/spring# https://github.com/spring-projects/spring-petclinic 예제 프로젝트 파일 받기 IoC(Inversion of Control) 소개 주로 의존성 컨트롤이 뒤바뀜exOwnerController는 반드시 OwnerRepository가 필요 IoC 컨테이너 스프링은 의존성 주입을 위한 IoC 컨테이너를 제공 컨테이너의 가장 핵심적인 인터페이스가 ApplicationContext 스프링에는 ApplicationContext라는 인터페이스 존재 이 인터페이스가 IoC 컨테이너로 불림 직접 쓸 일은 없고 의존성이 주입될 객체를 startup과 함께 먼저 객체를 만들어준다. 컨테이너 내부에 만든 객체(bean.. 2019. 5. 30. 이전 1 ··· 7 8 9 10 11 12 다음