首页 > 代码库 > struts2
struts2
struct2
mystruct
struts就是基于MVC模式的框架,并封装了servlet从而提高了开发效率。
1、 引入struts包,8个
2、 在web.xml中进行配置
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>//这个class根据版本不同也不一样。
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3、 开发action
这个类要继承ActionSupport类,然后写方法。记得要有String返回值,不能传参。ps:这个类就是替换之前的servlet的
4、 配置src/struts.xml
<struts>//根节点不解释
//package就是包
//extends 就是拓展要继承的名称,一般都是默认的
//abstract 是否为抽象,就是上边说得继承,如果为true肯定要被继承的
//namespace /abc/def 那么在访问的时候就必须加上/abc/def/名称
<package name="xxxx" extends="struts-default">
//action就是继承actionsupport的类
//name就是访问的时候输入的名称
//class 就是类喽
//method就是方法名称
<action name="hello" class="cn.qidi.Demo1.Demo1" method="execute">
//result就是返回结果
//name就是返回来的值,如果一样有什么用呢……
//中间的就是转发的地址了,默认是转发
<result name="success">/index.jsp</result>
</action>
</package>
</struts>
执行过程:
1、 启动tomcat,加载项目web.xml
2、 加载struts核心类
3、 访问:
a) 拦截所有action请求,并在struts.xml中寻找这个类
b) 找到后生成action对象
c) 执行默认的18个拦截器(一共有32个拦截器)
d) 执行action中的方法
拦截器与过滤器:
共同点:
都是截获资源的
区别
过滤器:拦截全部 是servlet概念
拦截器:只拦截action 是struts概念
struts2