본문 바로가기
Spring

Spring (@Controller,@RequestMapping)

by 코딩하는아재냥 2022. 8. 18.

presentation-layer.xml에 namespaces에서 context를 체크하고

콘텍스트를 사용할 준비를 합니다.

다음과 같이 컴포넌트스캔을 패키지로 설정을 해서 스캔할 범위를 설정해줍니다.

그리고 클래스위에

  • @controller
  • @component
  • @repository
  • @

이전엔 스프링 컨테이너에서 제공하는 컨트롤러를 상속받은 상태로 사용했지만

이제는 어노테이션 방식으로 사용하기 때문에 import 해야 하는 controller가 다르니 확인해줘야 합니다.

그리고 xml에 bean으로 잘 들어와 있는지 확인해줘야 합니다.

다음과 같이 requestMapping은  이전에 bean 방식에서 핸들러 mapping과 같은 역할 수행 중입니다.

  •  

  • Commnad 객체( VO클래스 )
  • controller로 작성된 클래스 안에 메소드의 매개변수로 정의된다.
  • vo타입의 매개변수는 값을 자동으로 받아서 setter 주입한다.
  • DAO,Model 클래스도 command 객체로 사용가능하다.
  • command 객체는 spring container에 의해서 자동생성된다.
  • vo에 저장된 값은 request영역 객체에 저장된다.
  • 클래스 이름을 첫글자 소문자로 속성명을 만들어 저장한다.

그리고 여기서 DAO 객체도 command객체로 만들수 있기 때문에

다음과 같이 매개변수로 넣어주고 command객체로 만들어주면

직접 boardDAO 객체를 만들어줄필요가 없습니다.

이렇게 코드가 짧아집니다.


이런 코드가 밑에처럼 어노테이션을 사용할 경우엔 이렇게 처리가 가능합니다.

하지만 둘의 차이를 명확하게 알아야하는점 명심해야합니다.


이제 수정하기 부분을 완성해보겠습니다.

updateController


이제 통합 컨트롤러를 통해서 사용해보도록 하겠습니다.

 

댓글