问题,配置文件中有哪些标签及标签的各个作用,Action的使用方法,自动更新配置文件的设置,动作名称后缀名的设置,各个result中type属性值。
struts2:到底做了什么呢?
1、编写struts.xml配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts><!--这是Struts2配置文件的根元素-->
<package name="itcast" namespace="/test" extends="struts-default">
<!--
pageckage:方便管理动作元素
name:必须有。包的名称,配置文件中必须保证<span style="color:#ff0000;">唯一</span>。
namespace:该包的名称空间,一般是以"/"开头(可以不写这个namespace,但是建议写)
extends:集成的父包的名称。struts-default名称的包是struts2框架已经命名好的一个包。(在struts2-core.jar中有一个struts-default.xml中,里面是核心拦截器的实现)
abstract:是否是抽象包。没有任何action元素的包就是抽象包(java类)-->
<span style="white-space:pre"> </span><action name="helloworld" class="cn.itcast.action.HelloWorldAction" method="sayHello">
<!--
<span style="white-space:pre"> </span>action:代表一个请求动作
<span style="white-space:pre"> </span>name:同包中必须<span style="color:#ff6666;">唯一</span>。动作的名称
<span style="white-space:pre"> </span>class:负责处理的JavaBean的类全名
<span style="white-space:pre"> </span>method:JavaBean中的对应处理方法。(动作方法:特点是,public String 方法名(){},不写menthod默认走execute方法(该方法必须继承ActionSupport类不然就没有这个execute方法))
-->
<span style="white-space:pre"> </span><result name="success">/1.jsp</result>
<span style="white-space:pre"> </span><!--
<span style="white-space:pre"> </span>result:结果类型
name:动作方法返回的字符串(默认success)
主体内容:View的具体地址。
-->
</action>
</package>
</struts>
2、根据配置文件,创建需要的javabean和对应的动作方法,在动作方法中完成你的逻辑调用。
package cn.itcast.action;
public class HelloWorldAction implements Serializable {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String sayHello(){
message = "helloworld by struts2";
return "success";
}
}
3、编写View,显示结果
通过类实例化在拦截器中跳转的页面可以得到属性值 ${message}