톰캣 6.0 설정

 - 비주얼스튜디오나 닷넷을 설치하지 않은 경우엔 msvcr71.dll 없기 때문에,
   이럴 경우엔 다운받아 windows/system32 하위에 붙여넣자!!!

 - 톰캣 6.0에서의 서블릿 제한풀기
 
    1) conf/web.xml에서의 invoker 주석을 해제 시킨다!!
    2) conf/context.xml 에서 Context태그에 속성에 아래와 같이 추가
    <Context reloadable="true" privileged="true">

 
1. MVC모델(패턴) 이란?

어플리케이션을 만드는 방법에 관한 이론중 하나!!
어플리케이션을 M,V,C로 분리하여 개발하는 방법에 관한 이론

M - Model(모델 : 비즈니스 로직 수행 담당영역)
V - View(뷰 : 결과를 보여주는 영역)
C - Controller(컨트롤러 : 모델과 뷰사이에서 흐름제어 담당)


2. 모든 어플리케이션의 업무처리 과정
 1) 요청을 받는다 - C
 2) 요청에 대한 분석 - C
 3) 요청에 알맞는 비즈니스 로직 수행 - M
 4) 비즈니스 로직 수행후의 결과를 저장할 것이
    있다면 결과저장(* 뷰로 가져갈 결과) - C
 5) 결과 보여주기 - V(디자인)

웹기반의 어플리케이션 구축 방법

1. 스크립트 기반(only jsp로만 구축하는 경우) -- 규모가 작은 asp나 php같은 경우에
  asp,php,jsp 만으로 어플리케이션을 구축하는 경우
 
  장점 - 개발시간이 빠르다.(프로그래머 1~2명으로 구축)
  단점 - 재사용성이 떨어진다.
         유지보수가 어렵다.(html과 jsp로직이 섞여 있으므로 코드 구별이 힘들다)
         공동작업이 불가능하다.
  * 주의할점 : asp,php,jsp만으로 개발하는 것 자체가 무조건 나쁘다는 것은 아니다!!!
               규모가 작을땐, 개발시간이 단축되어 오히려 생산성이 뛰어나다.

2. 스크립트 + java 연동(모델1)


3. 스크립트(view) -- 규모가 큰경우에
   서블릿(Controller)
   자바(Model)
   (모델2 mvc방식)

@ Controller에서 view에게 결과값을 넘겨줄때 (4번과정) get방식으로 전송할 수는 있지만

제한적이고 여러 단점이 존재한다.(스트링형만 전송가능, 일반객체는 전송 x, url에 노출됨 등등)

그래서 jsp태그의 forward(전달) 기능을 이용

<jsp:forward page="보낼 페이지">
 <jsp:param name="변수" value="<%=변수%>"></jsp:param>
</jsp:forward> 희안하게 결과페이지가 아니라 보낸 페이지에서 결과가 출력됨 (요청이 유지됬다!!)

.java 응용
.java 웹용 = 서블릿
.jsp

J2EE기반의 어플리케인션 구축시 mvc모델을 구현했을때 각각의 알맞는 처리 주체는 ?

Model - java (POJO: plain Old Java Object)(웹/응용등)어떤 플랫폼에도 영향을 받지 않는 중립적 자바클래스

View - 웹기반에서 보여주는 부분을 담당
       jsp,servlet 둘다 웹용 디자인이 가능하지만 servlet은 디자인 용도로 사용하긴엔 효율성이 떨어진다.
       따라서 view는 jsp가 담당!!!

Controller - 컨트롤러는 웹기반의 요청을 받을 수 있어야 하므로 웹서버에서 실행이 가능한 누군가에 의해
             담당되어져야 한다.
             servlet : 웹서버에서 실행되는 자바의 클래스이므로 웹기반의 요청을 처리하는 컨트롤러로써
                       사용하기에 적합하다!!!

@자바에서 MVC모델을 위와 같이 각파일 기능을 분담하여 구현한 것을 model 2라고 한다.

Posted by Taoist
,