使用Strust2框架寫HelloWorld


一、創建JavaWeb項目

二、搭建Stust2 FrameWork開發環境

三步完成Struts2 FrameWork開發環境的搭建

1.加入搭建Struts2 FrameWork開發環境的必需Jar包

將必需的11個Jar包復制到【lib】文件夾中 

2.在【src】目錄下創建“struts.xml”文件

在strusts.xml文件中加入如下配置信息

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE struts PUBLIC
 3     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4     "http://struts.apache.org/dtds/struts-2.0.dtd">
 5 
 6 <struts>
 7     <constant name="struts.devMode" value="true" />
 8     <package name="Hello_World_Struts2" extends="struts-default">
 9         <action name="index">
10             <result>/index.jsp</result>
11         </action>
12     </package>
13 </struts>

3.在【web.xml】文件中配置Struts2的核心過濾器(紅色部分)

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app version="3.0" 
 3     xmlns="http://java.sun.com/xml/ns/javaee" 
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
 6     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 7   <display-name></display-name>    
 8   <welcome-file-list>
 9     <welcome-file>index.jsp</welcome-file>
10   </welcome-file-list>
11   
12     <filter> 13 <filter-name>struts2</filter-name> 14 <filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class> 15 </filter> 16 17 <filter-mapping> 18 <filter-name>struts2</filter-name> 19 <url-pattern>/*</url-pattern> 20 </filter-mapping>
21 22 </web-app>

三、創建Model類MessageStore

在項目的src文件夾下添加一個“MessageStore.java”文件,如下圖所示

點擊【Finish】完成添加,此時在src目錄下就可以看到“MessageStore.java”這個文件了

打開“MessageStore.java”,編寫如下代碼:

 1 package org.apache.struts.helloworld.model;
 2 /**
 3  * Model class that stores a message.
 4  * @author xdp
 5  * @since 2013-3-24
 6  */
 7 public class MessageStore {
 8     private String message;
 9     public MessageStore(String msg){
10         this.setMessage(msg);
11     }
12     public String getMessage() {
13         return message;
14     }
15     public void setMessage(String message) {
16         this.message = message;
17     }
18 }

四、創建Action類HelloWorldAction,充當Controller

在項目的src文件夾下添加一個“HelloWorldAction.java”文件,放到“org.apache.struts.helloworld.action”這個包中,如下圖所示:

 點擊【Finish】完成添加,此時在src文件夾下就可以看到“HelloWorldAction.java”文件

在“HelloWorldAction.java”文件中編寫如下代碼:

 1 package org.apache.struts.helloworld.action;
 2 import org.apache.struts.helloworld.model.MessageStore;
 3 import com.opensymphony.xwork2.ActionSupport;
 4 /**Acts as a Struts 2 controller that responds
 5  * to a user action by setting the value
 6  * of the Message model class, and returns a String result.
 7  * @author xdp
 8  * @since 2013-3-24
 9  * @version 1.0
10  */
11 public class HelloWorldAction extends ActionSupport {
12     private MessageStore msgStore;
13     @Override
14     public String execute() throws Exception {
15        msgStore = new MessageStore("HelloWorld!");
16         return SUCCESS;
17     }
18     public MessageStore getMsgStore() {
19         return msgStore;
20     }
21     public void setMsgStore(MessageStore msgStore) {
22         this.msgStore = msgStore;
23     }
24 }

五、創建View(視圖)HelloWorld.jsp

在【WebRoot】文件夾下創建“HelloWorld.jsp”文件,如下圖所示:

此時彈出創建JSP文件的對話框

點擊【Finish】完成添加,此時在【WebRoot】文件夾下就可以看到HelloWorld.jsp”文件

在HelloWorld.jsp編寫如下代碼

 1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
 2     pageEncoding="ISO-8859-1"%>
 3 <%@ taglib prefix="s" uri="/struts-tags" %>  4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 5 <html>
 6 <head>
 7 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 8 <title>Hello World!</title>
 9 </head>
10 <body>
11     <h2><s:property value="msgStore.message" /></h2>
12 </body>
13 </html>

六、配置struts.xml

在struts.xml中加入紅色部分的配置信息

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE struts PUBLIC
 3     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4     "http://struts.apache.org/dtds/struts-2.0.dtd">
 5 <struts>
 6     <constant name="struts.devMode" value="true" />
 7     <package name="Hello_World_Struts2" extends="struts-default">
 8         <action name="index">
 9             <result>/index.jsp</result>
10         </action>
11         <action name="hello" 12 class="org.apache.struts.helloworld.action.HelloWorldAction" 
          method="execute"> 13 <result name="success">/HelloWorld.jsp</result> 14 </action>
15 </package> 16 </struts>

七、創建Action的URL鏈接

在index.jsp中添加Action的URL鏈接,index.jsp中的代碼如下:

 1 <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
 2     pageEncoding="ISO-8859-1"%>
 3 <%@ taglib prefix="s" uri="/struts-tags" %>
 4 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 5 <html>
 6 <head>
 7 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 8 <title>Basic Struts 2 Application - Welcome</title>
 9 </head>
10 <body>
11 <h1>Welcome To Struts 2!</h1>
12 <p><a href="<s:url action='hello'/>">Hello World</a></p>
13 </body>
14 </html>

<%@ taglib prefix="s" uri="/struts-tags" %>”表示引入struts2的標簽,“<s:url action>”是一個Struts2的標簽,用於創建Action的URL鏈接,<s:url action='hello'/>表示鏈接到一個名字為“hello”的action,這個名字為“hello”的action是在struts.xml配置文件配置好的,在struts.xml文件中可以找到如下的配置信息

1 <action name="hello"
2    class="org.apache.struts.helloworld.action.HelloWorldAction" 
    method
="execute"> 3 <result name="success">/HelloWorld.jsp</result> 4 </action>

八、部署運行

將項目發布到MyEclispe自帶的Tomcat服務器中,如下圖所示:

發布成功后就可以在Tomcat服務器中看到,如下圖所示:

打開瀏覽器,在瀏覽器中輸入http://localhost:8080/Hello_World_Struts2/index.action,此時就可以看到運行效果,如下圖所示:

點擊【HelloWorld】超鏈接,此時看到的效果如下:

運行正常,HelloWorld!輸出來了,使用Struts2編寫入門級HelloWord程序成功!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM