<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <!-- 파일 포함시키기 struts-default.xml은 자동으로 포함됩니다--> <include file="struts_study.xml"></include> <!-- tutorial이라는 패키지명을 default로 셋팅 www / index.html / tutorial 이 모두 default --> <package name="tutorial" extends="struts-default"> <!-- 요청할때 http://localhost:8080/s1.Hello/HelloWorld.action ip / port /프로젝트명/패키지명/액션네임.action http://localhost:8080/s1.Hello/tutorial/HelloWorld.action --> <!-- HelloWorld.action 이라는 요청이 오면 tutorial.HelloWorld클래스 실행하고 return이 success 라면 root/helloWorld.jsp를 사용자에게 보여준다 --> <!-- class="..안의 execute()를 실행해라 " execute()메서드를 실행하기 위해서는 객체를 생성해야만 하는데 그 객체생성작업을 struts가 합니다. 1. new HelloWorld().execute(); 2. String message = "Hello, World~~~~~~~! <hr/> hi"; 3. => success 리턴 4. 결과가(즉 리턴이) "success"라면 5. helloWorld.jsp를 보여줘 --> <action name="HelloWorld" class="tutorial.HelloWorld" method="myTest"> <result name="success">/helloWorld.jsp</result> </action> <!-- jsp의 mvc모델에서는 컨트롤러 역활을 java 클래스가 하는데에 비해 struts2 에서는 컨트롤러 역활을 struts.xml 이 합니다. 구조는 동일 --> </package> <!-- 기본 페이지를 설정할 때 package를 따로 잡자 --> <package name="def" extends="struts-default"> <!-- default-action-ref 기본 페이지를 ~ 무엇으로 하겠다 --> <default-action-ref name="DefaultAction" /> <!-- 기본 페이지 요청이 왔을 때 실행할 class와 보여줄 page --> <action name="DefaultAction" class="tutorial.DefaultAction"> <result>/DefaultAction.jsp</result> </action> </package> </struts>
package tutorial; public class HelloWorld { private String message; private String msg; public String getMessage() { return message; } // jsp에서 ${msg}라는 명령을 실행하면 // out.print(this.getMsg());가 실행된다 public String getMsg() { return msg; } //java- main , //android - onCreate... , //jsp:init , //struts:execute.. //자동 호출.. public String execute() throws Exception { this.message = "Hello, World~~~~~~~! <hr/> hi"; // request.setAttribute("message", "밸류~~"); 작업이 발생합니다 /* Item item=DBHelper.select(3);*/ return "success"; } public String myTest(){ msg="struts.xml의 action태그의 excute메서드 테스트"; return "success"; } }
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h1> request영역이나/ session영역 / application 영역 / page 영역 에 .. 즉 전에 request.setAttribute("message", "안녕~~~"); <br/> 그런 작업을 누군가가 해주었다.. 그 누군가는 struts.. <br/> message : ${message} <br /> 윗줄의 의미는 <%=객체.getMessage()%> <br /> msg : ${msg} <br/> </h1> </body> </html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> DefaultAction page <br /> 기본 페이지 ${message} </body> </html>
package tutorial; public class DefaultAction { String message; public String getMessage() { return message; } public String execute(){ message= "defaultAction에서 세팅"; return "success"; } }
'Struts2 > 2012.04월 강좌(MySQL)' 카테고리의 다른 글
1일차 한글 깨짐 현상 (0) | 2012.06.04 |
---|---|
1일차 form (0) | 2012.06.04 |
1일차 랜덤한 이미지 (0) | 2012.06.04 |
1일차 파일 포함시키기 (0) | 2012.06.04 |
1일차 struts (0) | 2012.06.04 |