struts2 知识回顾
很多小伙伴接触的第一个框架基本上都是struts2 虽然现在在企业开发中不常见但是作为 框架学习入门提供了很好的参考 可以作为一个跳板 学习其中的思想 后续的spring学习 提供借鉴
一框架的概念
1 框架是解软件开发过程中的普适性问题 可以看做是软件开发的半成品。
2 框架开发过程中 我们需要加入自己的业务场景和逻辑,然后完成一个成品的软件开发 在使用框架开发的过程中需要遵循框架的约束和规范。
3每一种框架都有自己专注的领域问题 使用框框开发能提高开发效率。
二、Struts2框架简介
\1. Struts2是apache软件基金会旗下的一款开源的MVC框架产品。Struts2的前身是由Struts1以及webwork发展而来。
\2. Struts2框架的主要作用: Struts2是解决JavaWeb开发中, 控制器层问题的框架技术。 底层是对Servlet进行的封装。
3既然是替代servlet那就与其对比 一下
4 Servlet作为控制器存在哪些缺陷
1.1 获取参数的操作冗余 每获取一个请求参数,都需要书写req.getParameter(…),这个操作冗余
1.2 需要手动完成数据类型转换
1.3 需要手动将零散数据封装成对象
1.4 跳转的视图写死在程序当中了(Struts2团队认为这种硬编码的方式,在程序中书写跳转视图资源不好)
Struts2 通过编写Struts.xml 文件完成对跳转的处理
起初我们开发控制器时是 1编写类实现Action接口 2继承ActionSupport
三、Struts2中跳转的控制
通过result 标签 type标签控制
1.action到JSP的跳转 通过type标签控制
默认 请求转发
重定向
action到action的跳转
重定向
请求转发
四以package的方式设计管理action
\1. 为了方便将不同的类型action进行分类的集中管理, Struts2提出了package的概念。 实际开发中我们可以将针对于不同表操作的action,单独的配置到不同的package中。
2 跨包跳转 标签的掌握
五Struts2的收参机制
\1. Struts2是采用成员变量接收客户端请求参数。、成员变量替换request作用域
\1. 通过成员变量接收请求参数:
1.1 成员变量名 与 请求参数的key对应
1.2 成员变量的类型是你需要的类型
1.3 提供公开的getset方法
\2. struts2接收请求参数的好处
2.1 自动完成数据类型的转换
2.2 自动将零散的数据封装成对象
2.3 struts2默认设置了POST请求的编码处理,默认是UTF-8编码
六DMI开发模式
\1. DMI开发称为动态方法调用, Struts2框架允许我们在一个action实现类当中编写多个处理客户端请求的方法,每一个方法都可以对应处理一种请求。大大方便了我们的开发
2.DML开发的实现
2.1 第一种配置方式
2.2 第二种
2.3 开发中DMI的使用: 将针对于同一张表操作的请求,定义到同一个action实现类中。
2.3 开发中DMI的使用: 将针对于同一张表操作的请求,定义到同一个action实现类中。
七struts.xml配置文件的拆分
总的来说struts 知识点的学习并不难 但是具体在结合Mybatis jsp 练习的时候比较繁琐 涉及到传参 收参 库表设计 。。。等需要细心 细致