这篇文章是关于struts2的配置,之前我在网上或者贴吧上都看到很多人在问struts2的配置问题。所以写这篇来给需要帮助的人,struts2的配置并不复杂。
一.先准备好需要的6个jar包(反正我配置的时候就需要到6个):
1.commons-fileupload-1.2.1.jar
2.commons-io-1.3.2.jar
3.freemarker-2.3.15.jar
4.ognl-2.7.3.jar
5.struts2-core-2.1.8.jar
6.xwork-core-2.1.6.jar
二.新建工程
src:里新建struts.xml内容如下:
<struts>
<package name="default" namespace="/test" extends="struts-default"> //name类似java的包名字不能重复,namespace为运行这个包的路径,extends固 //定写法
<action name="hello" class="cn.edu.action.helloaction" method="execute"> //name为action的名字可以重复,但是不建议这样,class为调用方法的全部名称包 //括报名字,method为方法中要执行的方法名字(本人基础不是太好,如果看不懂 //请对照下边代码看)
<result name="success">/index.jsp</result> //name为方法中要返回的结果名称,这里注意如果要跳转到index.jsp需要在前边 //加/,
</action>
</package>
</struts>
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>
<url-pattern>/*</url-pattern>
</filter-mapping>
直接复制即可
cn.edu.action中的helloaction方法中的代码:
package cn.edu.action;
public class helloaction {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.aa = message;
}
public String execute(){ //这里的方法名字对应struts.xml中的method="execute"
this.message="helloword";
return "success"; //这里对应struts.xml中的result标签中的name
}
}
index.jsp中
直接输入${message}就可以打印出helloword(具体原因我还不清楚正在学习中)
三.页面上输入
http://localhost/工程名字/struts.xml中你要跳转action的包的路径/action的名字
例如http://localhost/struts/test/hello