2014년 8월 21일 목요일

[심심풀이]환영인사(Welcome)를 struts의 Action으로 설정하기[자바JSP/Servlet/JDBC/MiPlatform/XPlatform/교육/JSP/서블릿강좌/Spring교육잘하는곳/자바,JSP/spring/교육추천/JSP/JDBC실무교육]

환영인사(Welcome)를 struts의 Action으로 설정하기 

web.xml에서 welcome-file-list는 사용자가 URI의 일부만 입력을 했을 때 기본적으로 보여 줄 자원을 정하기 위해 사용 합니다. 

예를들어 다음과 같이 설정 했다면…(Login 이라는 웹 애플리케이션을 만들었다고 가정) 

<welcome-file-list> 
            <welcome-file>main.jsp</welcome-file> 
    </welcome-file-list> 

브라우저에서 http://localhost/Login/ 이라고 입력하면 main.jsp 가 로딩 된다는 이야기 입니다. 즉 http://localhost/Login/main.jsp 와 같은 기능을 수행 하는 것 입니다. 

몰론 welcome-file-list에 여러 개의 welcome-file을 선언 하는 것 역시 가능 합니다. 

이렇게 하면 컨테이너는 사용자가 요청한 URI와 일치하는 환영파일을 찾을 때 까지(기술된 순서대로) 찾는 과정을 반복 합니다. 

Welcome-file의 속성 값은 ‘/’로 시작하거나 뒤쪽에 ‘/’이 붙을 수 없으니 주의 하세요~ 

---------------------------------------------------------- 
환영 파일 내에서 struts의 Action을 사용 하기 
---------------------------------------------------------- 

컨테이너는 welcome-file-list 요소 내에 서블릿 매핑을 지원하지 않으므로 struts의 Action을 사용하기 위해 welcome-file 요소를 직접 만질 수는 없습니다. 

그대신 다음과 같은 방법을 이용하면 가능 합니다. 

1.        web.xml에서 welcome-file을 설정 합니다. 

<welcome-file-list> 
            <welcome-file>welcome.jsp</welcome-file> 
    </welcome-file-list> 

2.        welcome.jsp를 만듭니다. 

<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %> 
<html> 
        <body> 
                <logic:forward name="welcome"/> 
        </body> 
</html> 

3.        welcome.jsp에서 사용한 global-forward를 만듭니다.(struts-config.xml) 

<global-forwards> 
<forward name="welcome" path="welcome.do"/> 
    </global-forwards> 

4.        global-forward에서 정의 한 Action에 대한 매핑을 합니다.(struts-config.xml) 

<action-mappings>                    
        <!-- welcome Action정의 --> 
        <action 
                path="/welcome" 
                type="login2.Welcome" 
                validate="false" 
        />            
    </action-mappings> 

5.        테스트를 위해 간단한 Action 파일을 만듭니다. 

package login2; 

import org.apache.struts.action.Action; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import org.apache.struts.action.ActionForm; 
import org.apache.struts.action.ActionForward; 
import org.apache.struts.action.ActionMapping; 

import login2.Constants; 

public class Welcome extends Action {        
        
        public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { 
                                
                //성공적으로 처리 되었음을 알림, main.jsp로 보내버림... 
                //결국 환영인사를 하게 되면 main.jsp가 불리는 것입니다. 
                return (mapping.findForward(Constants.SUCCESS)); 
                
        } 



결과를 확인 하기 위해 http://localhost/Login/ 이라고 입력 하면 main.jsp가 실행 됩니다. 혹시 main.jsp를 만들지 않으신 분은 이전 강좌에 있는 main.jsp를 이용하세요~ 



평일주간[100%환급과정]
(8/25)C#4.0,WinForm,ADO.NET
(8/25)안드로이드개발자과정
(8/25)SQL기초에서 Schema Object까지
(8/29)Spring,MyBatis,Hibernate실무과정
(8/29)자바기초JDBC,Servlet/JSP까지
(8/29)PL/SQL,ORACLE HINT,TUNING
(8/25)오라클자바채용확정교육
평일야간[개인80%환급]
(8/26)SQL기초에서실무까지
(8/26)안드로이드개발자과정
(8/28)자바JSP,jQuery,Spring,MyBatis
(8/29)Spring, MyBatis, Hibernate
(9/02)HTML5,CSS3,Ajax,jQuery마스터
(9/12)C#,Network,ADO.NET,ASP.NET
주말주간[개인80%환급]
(8/23)자바웹&스프링,마이바티스
(8/23)Spring, MyBatis, Hibernate
(8/23)SQL기초에서실무까지
(8/23)자바,네트워크,웹&스프링
(8/30)안드로이드개발자과정
(8/30)C#,ASP.NET마스터(8/30)웹퍼블리싱 마스터

댓글 없음:

댓글 쓰기