使用Struts2开发程序的基本步骤:
1.加载Struts2类库
2.配置web.xmlwen文件
3.开发视图层页面
4.开发控制层Action
5.配置Struts.xml文件
6.部署,运行项目
具体如下:
步骤1: 配置web.xml文件
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<!-- 拦截所有的action -->
<url-pattern>/*</url-pattern>
</filter-mapping>
步骤2:在src下创建名称为struts.xml的配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 配置文件中只要添加以下配置,那么以后修改配置文件不用重启tomcat -->
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<!-- 第一个action的例子 -->
<action name="helloWorld" class="cn.happy.action.HelloWorldAction">
<result name="success">
index.jsp
</result>
</action>
<!-- 登陆的action -->
</package>
<!-- Add packages here -->
</struts>
步骤3:编写HelloWorldAction
package cn.happy.action;
import com.opensymphony.xwork2.Action;
public class HelloWorldAction implements Action{
private String name ;
private String message;
public String execute() throws Exception {
setMessage("Hello"+getName());
return "success";
}
}
步骤4:创建index.jsp页面
<div>
<h1>
<!--显示Struts Action中message的属性内容-->
<s:property value="message"/>
</h1>
</div>
<div>
<form action="helloWorld.action" method="post">
请输入您的姓名:
<input name="name" type="text" />
<input type="submit" value="提交" />
</form>
</div>
步骤5:通过浏览器访问
点击提交后结果
struts配置文件说明
<!-- 配置文件中只要添加以下配置,那么以后修改配置文件不用重启tomcat -->
<constant name="struts.devMode" value="true" />
一个警告的解决
问题描述:No configuration found for the specified action: 'login.action' in namespace: ''. Form action defaulting to 'action' attribute's literal value.
解析:<s:form action="Login" method="post" namespace="/"> or <s:form action="/Login" method="post" >