今天我们来看看Struts2框架,真是类,其实之前这个框架已经看过了,但是全部忘了,所以只能重新看,心累
Struts2框架的核心功能就是拦截器
Struts2概念:
初始Struts2:
Struts2的使用优势:
- 自动封装参数
- 参数校验
- 结果的处理(转发|重定向)
- 国际化
- 显示等待页面
- 表单的防止重复提交
Struts2的使用优势:
- struts2与struts1区别就是技术上没有什么关系.
- struts2的前身时webwork框架.
搭建Struts2框架:
1.导包:
注意:Struts2需要导入的包没有像hibernate那样明确标明出来,需要自己去找,然而在Struts2的压缩包里面的apps文件夹下有个struts2-blank.war包,表示人家的案例项目,并且这个项目是个空项目(blank嘛),将其放在tomcat的webapp目录下,运行tomcat,然后发现其被解压了,然后点进去,在WEB-INF下面找到lib包,里面就是我们需要导入的Struts2的包了。
2.书写Action类:
1 | package yp.itcast.a_hello; |
3.书写src/struts.xml:
1 | <?xml version="1.0" encoding="UTF-8"?> |
4.将Struts2的核心过滤器配置到web.xml:
1 | <?xml version="1.0" encoding="UTF-8"?> |
注意:在这里我们需要几下Struts2的核心过滤类org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
5.测试:
Struts2框架访问流程&Struts2架构:
1.访问流程:
2.Struts2架构:
3.Aop面向切面编程:
Struts2配置详解:
1.struts.xml配置:
1 | <?xml version="1.0" encoding="UTF-8"?> |
2.Struts2常量配置:
Struts2默认常量配置位置:
修改Struts2常量配置(方式先后也是加载顺序):
方式①:src/strust.xml
1 | <?xml version="1.0" encoding="UTF-8"?> |
方式②:在src下创建struts.properties文件
方式③:在项目的web.xml文件中
1 | <!-- 配置常量的第三种方式(会覆盖) --> |
3.Struts2进阶配置:
动态方法调用:
方式①和②:
1 | <?xml version="1.0" encoding="UTF-8"?> |
Struts中默认配置:
1 | <?xml version="1.0" encoding="UTF-8"?> |
Struts2中Action类的书写方式:
方式①:
1 | package yp.itcast.d_api; |
方式②:
1 | package yp.itcast.d_api; |
方式③:
1 | package yp.itcast.d_api; |