다른 패키지에 만든 컴포넌트는 뜨지 않는다

com.cos.demo 이하만 스캔

등록

다른 패키지에 만든 건 메모리에 뜨지 않는다

-----------------

외부로 노출 되는 것은 컨트롤러 밖에 없다

@Controller 

 

@Component 등은 노출되지 않는다

-------------------

제어의 역전

Inversion of Controll

IoC - 어노테이션 한 클래스를 메모리에 등록

--------------

DI - Dependency Injection 의존성 주입

 

핵심!!!

타입을 통해서 주입받는다. 타입을 잘 적어야함

--------------

다른 패키지에 만든 컴포넌트는 불러와지 않는다

 

 

------------------

스프링 레거시에서는 컴포넌트 스캔을 servlet-context.xml 파일에 등록해줘야 한다

--------------------

 

 

--------------------

컨트롤러 함수이름은 크게 중요하지 않다

--------------------

 

new를 하기 위해서는 @Component를 사용하지 말아야 한다

------------------------

 

 

data로 보내도 객체 내부의 변수명에 맟춰서 자동으로 입력된다

-----------------

 

접속 주소가 같아도 받는 방식을 다르게 할 수 있다

 

postman

----------------

 

 

 

-----------------

 

함수 널처리나 전처리(파싱 등)

jsp에서는 if (requset.getparamater("aa") != null){}

스프링에서는

함수에 들어가기전이나 후에 널처리를 할 수 있다 = AOP

 

jackson 바인더 - 제이슨 파싱

아래 조건에서 발동

발동시기 - 함수 시작 직전

 

 

 

보내는 값을 하나 빼도 알아서 있는 값만 파싱해준다

-------------------

 

post데이터는 기본적으로 key : value 형식

객체에 담기 위해서는 setter가 필요하다

--------------------

 

MessageConverter 스프링으로 오는 데이터를 컨버팅해준다

기본은 form데이터 , @RequestBody 를 사용하면 json데이터 컨버팅 가능

------------------

 

 

--------------------

 

스프링 할 때는 통신시 JSON으로 통일 하는 것이 좋다

------------------

 

스트링 타입으로 전송하고 싶다면

 

-----------------

 

@RestController

컨트롤러를 타는 모든 주소가 리턴해주는게 모두 데이터일 경우 사용

-----------------

 

 

+ Recent posts