2014年8月9日

Struct2


Struct2
1.Hello world

  • 環境建置
       Tomcat : 6.0 版
       Servlet API 2.4
       JSP API 2.0
       Java 5以上
       先具備有servlet的環境建置基礎
   
  • 建置的第一步
      (1)下載 Struts2 : http://struts.apache.org/2.x/ ( 這邊是使用2.3.4.1版)
       lib下的檔案為:
    

      (2)Servlet環境建置
     在Tomcat的webapps中新增一個資料夾為bank,既是我們要實做struct2的環境。
    
       修改web.xml
<!--  struct2 configuration setting -->
<filter>
 <filter-name>struts2</filter-name>
 <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
     說明: 這邊是用來定義filter的功能,當我下<url-pattern>/*</url-pattern> 表示不會structs所的動作都會不檔住,
struts.xml
<?xml version="1.0" ing="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<package name="product" namespace="/produce" extends="struts-default" >
 <action name="hellow" class="com.produce.action.HellowAction" >  
  <result name="success">HelloWorld.jsp</result>
</action >
</package>
</struts>
   
  說明:  <struct>          : 主要用來定義struct2的controller的action
             <package>     :
            <action>          :

    (3)撰寫前端網頁和JAVA程式
     
    當我們設定好web.xml和struct2.xml後,開始view和model的部分分別為jsp和java檔,       
   
index.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Basic Struts 2 Application - Welcome</title>
</head>
<body>
<h1>Welcome To Struts 2!</h1>
  
<p> <a href="<s:url action='hellow'/>">Hello World</a></p>
</body>
</html>

 
HelloWorld.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!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=ISO-8859-1">
<title>Hello World!</title>
</head>
<body>
  <s:property value="Message.message" /> 
  
</body>
</html>