반응형
반응형
MVC 패턴 흐름을 정리하면서 새로운 용어인 DispatcherServlet이라는게 새로 튀어나왔죠? 바로 저번글에서 한번에 정리할까 하다가 그냥 따로 하나의 주제로 정리하는게 낫다 싶어서 게시글을 분리했습니다. 먼저 사전적 의미로 Dispatcher는 분배하다, 배치하다, 보급하다등의 뜻을 가지고 있으니 DispatcherServlet이라 함은 서블릿을 배치하고 분배하고 보급하는 기능을 담당하고 있겠네요. 앞으로 이 글에서 눈의 피로도를 피하기 위해 디스패쳐서블릿이라 부르겠습니다. 디스패쳐 서블릿의 역활은 MVC구조중 가장 중간에 위치하여 웹브라우저에서 요청한 정보를 받아 핸들러매핑에 역활을 분배하고, 컨트롤러에서 보내온 정보를 받아, 뷰리졸버에 전달후, 뷰에서 출력된 화면을 웹에 다시 전송해주는 역활..
스프링 프레임워크 기반으로 게시판을 짜기 위해 MVC(Model / View / Controller) 패턴을 사용할 예정이라 이번글에서 정리해보도록 하겠습니다. 스프링 MVC 패턴은 좀 복잡한 구조를 가지고 있지만, 며칠전에 스프링 모델설계를 정리했던 글을 보고 오시면 이해가 빨리 될거라 생각합니다. 일단 빠른 진행을 위해 저번에 만들었던 사진을 아래에 첨부하겠습니다. - SpringFrameWork 모델 설계 사진 - 도움되는글 → 스프링 프레임워크의 MVC 모델 구조 저번글에서 설명했듯이 Controller(서블릿)와 Model(JavaBean) 그리고 View(JSP)가 서로 상호작용하면서 유지보수가 쉽게 원활한 구조를 가지고 있고, 요번글에서는 단지 어려운 용어가 새로 생겨났을뿐이지 흐름은 비슷합..
스프링프레임워크의 두번째 장점인 AOP(Aspect Oriented Programming)기능을 한번 알아보겠습니다. AOP는 관점지향프로그래밍이라 불리며 구글번역기로 돌리면 가로지향프로그래밍이라 뜨는데 가로지향이라 외우시는게 머리속에 기억 남으실겁니다. 밑에서 AOP 구조를 그림으로 설명하게 될텐데 설명전에 왜 관점지향이 아니라 가로지향을 자꾸 언급하는지 아시게 될거에요. 먼저 AOP 기능을 스프링에서 지원하는게 왜 장점일까요?? 제 나름대로 한가지를 예로 들어 보겠습니다. 은행과 같이 보안이 1순위인곳에서 프로그램을 짜는데 각 클래스파일마다 보안기능을 넣을라면 얼마나 귀찮을지 상상이 됩니다. 물론 꼭 넣어야 할 곳만 몇개 추가한다면 상관없겠지만 보안기능만을 갖추고 있는 모듈을 하나 만들어 공통적으로 ..
저번글에서 스프링 프레임워크의 MVC 모델을 그림으로 정리해보면서 왜 사용하는지 필요성을 느끼게 됬는데요. 이번 포스팅에서 스프링의 장점을 알아보려 했다가 방대한 양을 느끼고, 전부 정리할 시간적 여유가 없어 게시판 만들기 프로젝트에 필요한 DI 와 AOP에 대해서만 살펴보도록 하겠습니다. 스프링을 공부하면서 알게된 DI가 도대체 무엇인지.. Dependency Injection의 약자라고 하지만, 한글로 번역한 의존성 주입이라는 말만 들어도 이해하기 정말 어렵네요. 평소에 거의 듣지 못하는 단어라 생소하기만 합니다. 그래서 글의 순서를 (1) 프로그래밍에서 의존성이 무엇인지 알아보고, (2) 스프링에서 DI 기능, (3) DI 설정방법에 대해 정리하도록 방향을 잡았습니다. ■ 프로그래밍에서 의존성?? ..
예전부터 스프링 프레임워크를 공부하면서 왜 사용해야되고 공부해야 되는지 이유에 대해서 궁금했는데요. 그 이유 중 하나는 기존에 사용 모델 방식이 JSP와 JavaBean만을 이용해 개발속도가 빨랐지만 단점으로 1.코드가 복잡하다 2. 컨트롤러와의 구분이 애매해서 유지보수가 어려워 사용하게 됬다고 해요. 반면 스프링 프레임워크를 사용하게 되면 Model, View, Controller 3가지 조화로 로직이 확실하게 분리되어 유지보수가 쉬워지게 됩니다. ■ JSP와 JavaBean만을 사용한 모델 (스프링x) 스프링을 사용하지 않고 기존에 사용되었던 모델을 그림으로 정리하자면 이런거죠. 웹 브라우저에서 JSP로 요청하면 JavaBean에서 자원을 받아와 JSP에 뿌려주고 바로 웹브라우저에 전송하는 방식이였습..
웹 기반 프로그래밍을 하기 위해 Java나 JSP, HTML 이정도만 알고 있으면 좋으련만 웹 컨테이너의 한계로 프레임워크를 또 공부해야 하네요. 스프링(Spring)은 현재 공공기간이나 대부분의 회사에서 사용될 정도로 배워두면 정말 유용하게 쓰일것 같은데요. 역시 영어로만 이루어져서 한 눈에 보기 어려워 머리가 아픕니다. 그래도 스프링을 안 배우면 웹개발자가 되지 못하니 열심히 정리해보겠습니다. 먼저 스프링을 다루기 위해서는 지원해주는 프로그램이나 플러그인이 있어야 되는데요. 이 카테고리에서는 이클립스에서 스프링 플러그인을 설치해 연동하는 방법을 설명하겠습니다. ■ 스프링 개발툴(STS)을 이클립스(Eclipse)와 연동 이클립스를 실행한다음 상단 메뉴인 Help의 Eclipse Marketplace를..