struts2的学习使用(IDEA免费版)
学习教程
参考的是哔哩哔哩的这门Struts2框架课程
尽管struts2框架在目前来看已经被许多新框架取代,但它的地位和设计思想包含着互联网Web服务的底层架构原理;是对servlet的一种简化,采用配置的形式形成规范,简化代码的书写。
基本示例
基本项目,创建maven项目,创建请求对应的Action,以及配置文件struts.xml,在配置文件中对请求进行配置
框架底层原理是通过解析配置文件,得到类的全路径,通过反射调用其中的类的方法,实现功能
配置servlet对应的Action类,会自动调用里面的execute方法
示例项目下载
编写多个Action及分模块编写xml和导入xml
分模块编写,以及采用maven导入依赖配置
Action的实现可以通过继承ActionSupport类
Action的method写法与通配符写法
采用method对方法进行指定,以及采用通配符的方式简写action
客户列表页面的显示
采用ServletActionContext.getRequest()将数据存入到jsp的域对象中,
采用forEach进行遍历展示
result的type属性及action的重定向
采用对result的type属性进行设置,可以达到重定向的效果,包括页面的重定向和action的重定向
ActionContext及ServletActionContext获取表单数据(代替原来的Servlet利用request获取请求数据)
利用ActionContext.getContext()和context.getParameters()获取表单数据;
利用ServletActionContext.getRequest()获取request对象
获取表单数据的三种方式
1、传统的通过request获取,即上述两种
2、属性封装
3、模型驱动封装
4、表达式封装
属性封装,需要有属性和get、set方法
模型驱动封装,需要初始化对象和实现ModelDriven接口
表达式封装,需要声明对象和对象的get、set方法
封装到list中,声明list,和对应的get、set方法;在页面中书写list[0]、list[1]
封装到map中,同样声明map与其get、set方法,在页面中书写map[‘key’]
添加客户功能展示
采用模型驱动封装接收数据
添加后重定向页面