bean 설정

jinkyung·2021년 2월 17일
0

Spring

목록 보기
13/24

xml을 통한 설정


action은 Dispatcher servlet의 설정 파일 (디스패처 서블릿은 스프링 컨테이너 구동시 무조건 action 파일을 찾아 로딩한다)

dispatcher servlet의 역할 : 톰캣으로부터 들어오는 신호를 다른 컨트롤러로 연결시키는 역할

action-servlet.xml : 스프링 컨테이너를 위한 설정 파일. 페이지 컨트롤러의 클래스를 등록하는 곳.
action 파일을 읽어서 handler 매핑 클래스 안에서 action의 bean들을 등록시킨다.

contextConfigLocation 파일은 bean 설정 파일
필요에 따라서는 설정 파일의 이름을 바꾸거나 위치를 변경할 수도 있다. 이 때 서블릿 초기화 파라미터를 이용한다.
action 파일을 config폴더로 옮겨 presentation-layer.xml파일로 변경한다.


dispatcher 서블릿은 서블릿 컨테이너에 의해 가동될때 presentation 파일을 읽어들이는데 이 때 컨테이너가 동작을 하면서 bean(핸들러매핑)객체가 생성되고 페이지 컨트롤러 역할을 하는 bean들이 생성된다.
prop 정보들을 가지고 key에 해당하는 주소가 들어오면 주소의 아이디가 있는 bean을 호출하는 것이다.


view resolver 객체를 등록
클라이언트로부터 직접적인 jsp 호출을 차단할 수 있다. (p.341)
(WEB-INF 안에 감춰놓은 resource들의 경로를 가공함으로써 접근할 수 있도록 한다)

view resolver를 사용시 redirect를 붙이면 view resolver의 영향을 받지 않는다. (외부에서 접근 가능한 파일들은 redirect로)
.do인 요청에는 redirect:를 붙여서 view resolver가 동작하지 않도록 한다.

board 폴더 안의 것들은 접두어와 접미어를 붙이도록 한다.
접두어 접미어에 의해서 숨겨진 파일을 안에서만 접근할 수 있도록 하는 것이다.


Annotation으로 전환

context 추가 (annotation을 읽어들이기 위한 설정)

POJO 클래스 방식 -> 결합도가 낮아진다
controller 어노테이션을 등록하면 파라미터값들을 추출해서 파라미터 이름을 보고 setter 메서드 호출하여 객체에 값이 자동으로 주입된다.
형변환도 자동으로 해준다.

코드가 굉장히 간결해졌다!

화면 전환만 한다면 String으로 리턴하면 된다. 데이터가 있으면 modelandview로 리턴해야 한다.
return을 modelandview로 주면 데이터를 가지고 리턴하는 것으로 인식한다.
즉 boardList 정보를 request에 담아서 jsp로 리턴한다.


0개의 댓글