一 一个简单的Struts2项目必备条件:
1.导入核心包:
2.web.xml的配置:
<filter>
<filter-name>struts2</filter-name> <filterclass>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3.struts.xml 的配置:
dtd 的拷贝,打开核心core包
往下翻找到:
打开文件struts-2.0.dtd 拷贝30到32行
注意:该文件最好位于src目录下(相信我)
4.action中绑定参数的三种方法:
(1)字段法 getter/setter方法 ,与页面表单name的值相等即可
(2)类 创建一个类,一字段方法导入,提供getter,setter方法,页面表单需要name的值改变为:类名.属性
(3)实现接口发:实现 ModelDriven<类型>接口,实现 getModel()方法,不需要提供 getter/setter方法,不需要改变页面。
5.Struts2与servlet API 的松耦合 与 耦合
(1)区别:松耦合只有数据传输功能,不具有请求头等众多功能
(2)实现:
a.松耦合:a1:代码实现法:
Map request = (Map) ActionContext.getContext().get("request");
Map a =ActionContext.getContext().getApplication();
只有request有点不同,其余的与Application获得一样
a2:接口实现法:RequestAware
实现方法:
b 耦合:b1:
代码法:
对比一下前面,只多了一个Servlet(ActionContext)
b2:接口法: