Strude2 学习之旅
第一个项目HelloWorld
Step1 创建Model类MessageStore.java
package org.apache.struts.helloworld.model;
public class MessageStore { private String message; public MessageStore(){ setMessage("Hello Struts User"); } public String getMessage(){ return message; } public void setMessage(String message){ this.message = message; } } |
一定要为message设置set和get方法来允许访问私有变量message。
Step2 创建一个Action Class HelloWorldAction.java
package org.apache.struts.helloworld.action;
import org.apache.struts.helloworld.model.MessageStore;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private MessageStore messageStore;
public String excute() throws Exception{
messageStore = new MessageStore();
public MessageStore getMessageStore() {
public void setMessageStore(MessageStore messageStore) {
this.messageStore = messageStore;
Struts2框架将建立一个HelloWorldAction的对象,执行execute方法来响应用户操作(用户点击链接,发送特定的url到servlet容器)。
这个例子中execute方法创建了一个MessageStore对象然后返回一个SUCCESS字符串。
为了让前台jsp页面中获取到对象信息(MessageStore对象),需要设置set、get方法。
Step3 建立一个View HelloWorld.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
<%@ taglib prefix="s" uri="/struts-tags" %>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<h2><s:property value="messageStore.message"></s:property></h2>
Step4 添加Struts配置信息到struts.xml中
<?xml version="1.0" encoding="UTF-8"?>
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<constant name="struts.devMode" value="true" /> //开发模式
<package name="basicstruts2" extends="struts-default">
<action name="hello" class="org.apache.struts.helloworld.action.HelloWorldAction" method="execute">
<result name="success">/HelloWorld.jsp</result>
Step5 建立URL Action
在index.jsp中让我们添加一个Action URL,用户点击后会告诉Struts2执行HelloWorldAction的execute方法,显示在HelloWorld.jsp页面中。
<p><a href="<s:url action='hello'/>">Hello World</a></p> <br>
<a href="hello.action">nihao</a>
Step6 建立WAR文件并运行程序
Struts2的强大标签库
<%@ taglib prefix="s" uri="/struts-tags" %>
<p><a href="<s:url action='hello'/>">Hello World</a></p> <br>
<a href="hello.action">nihao</a><br>
<s:url action="hello" var="he">
<s:param name="userName">Bru T</s:param>
<p><a href="${he}"> hehe</a></p>
将action="hello"中的内容存入到变量he中,以便以后使用。
<p>Get your own personal hello by filling out and submitting this form.</p>
<s:textfield name="userName2" lable="Your name"/>
<s:submit value="提交"></s:submit>