목록Backend/스프링 (19)
개발 무지렁이
SERVLET BEAN 설정을 javaBase로, @annotation 컨트롤러 클래스 자동스캔 🪅. Spring MVC 컨포넌트를 다음과 같은 @annotation으로 변환할 수 있다. web.xml => @WebServlet Handler Mapping => @RequestMapping ⚠️. MVC에서는 메서드로 호출X, URL 요청주소가 맞는 것이 중요하다. Controller => @Controller return: ModelAndView, String, void [RequestMappingController.java] ⚠️. URL 요청주소에 .do(쩜두)를 붙이는 것은 관례이다. @Controller @RequestMapping("/rem") public class RequestMapping..
Spring MVC 컴포넌트간 흐름 요청(request)만 보내면 나머지는 Spring이 알아서 한다. (1) web.xml문서에 DispatcherServlet을 등록한다.(Servlet 생성 -> 🪹 Spring container를 생성) (2) 🌱 SPRING BEAN 설정문서의 기본위치와 이름을 적는다. (/WEB-INF/springConfig/[서블릿이름]-servlet.xml or servlet-context.xml) ⚠️. spring은 🌱 SPRING BEAN 설정문서를 로딩해서 필요로하는 객체들의 lifeCycle을 관리한다. ⚠️. 🪹 Spring container에 Handler Mapping 객체, Controller 객체, ViewResolver 객체를 올려준다. (bean으로 등..
AOP(Aspect Oriented Programming) 공통로직을 횡단으로 빼서 별도의 모듈(라이브러리 덩어리)로 만들어 놓고, 호출해서 사용 (관점을 핵심기능과 공통기능으로 분리) (관심사항을 등록해놓으면, 타겟대상을 찾아서 사전 / 사후처리, Filter와 같은 역할) WHY? 요구사항 변경에 소스코드 변경을 최소화 🧩범용성 코딩 Style, 🧩직관성 Advice 객체 공통의 기능을 모아둔 객체 🚀. AOP 적용시기 Around: 사전, 사후 Before: 사전 After: 사후 (예외여부 상관없이) After-returning: 사후 (정상동작시) After-throwing: 사후 (예외발생시) ⭐. AspectJ (어노테이션 이용) @Around @Before @After @After-retu..
생성 annotation @Component: 태그와 동일한 역할을 한다. 객체 생성 이를 확장해놓은, @Repository: persistence(영속성)을 가지는 클래스 생성 @Service: business logic을 가지는 클래스 생성 @Controller: presentation layer, 웹 요청과 응답을 처리하는 클래스 생성 🚨. annotation의 기본 id는 클래스 이름의 '첫글자'만 '소문자', 나머지는 동일주입 annotation @Autowired: , 을 byType으로 주입 같은 타입이 여러개 있다면 byName으로 주입 @Resource: 의존하는 객체를 자동으로 주입, 주로 byName으로 주입 @Value: 와 동일한 역할을 한다. @Qua..
.properties라는 파일을 읽어들여서 정보로 활용하는 경우가 많다. 📌. 외부 properties 파일의 위치를 설정 classpath:info.properties 📌. namespaces: context spring에서 필요로하는 객체들을 모아서 미리 만들어 준다 (스캐닝) [info.properties] #key=value no=10 addr=\uAC15\uB0A8 \uC120\uB989\uC5ED name=\uD64D\uAE38\uB3D9 phone=555-5555[ApplicationContext.xml] 외부의 properties의 key를 가져오는 명령어 ${ }
제어의 역행 (Inversion of Control) 흐름이 뒤바뀌다. 내부에서 객체를 생성(new)하는 것이 아니라, 외부의 Spring Container(IoC 컨테이너)가 객체를 생성해서 안으로 주입해준다. (DI) DI 유형 (의존성 주입) 📌. 객체의 의존관계를 파악해서 객체의 LifeCycle을 관리 - Construction Injection ('생성자를 통한 주입') - Setter Injection ('Setter를 통한 주입') - value 키워드 - ref 키워드 ⚠️ 생성 및 주입은 Spring Container가 주관. => 이를 위해 configuration meta 정보를 입력하자 [beans.xml] [MainApp.java] public cla..