Struts2框架学习day01(入门XML配置、action编写)

1.2 Struts2框架的学习路线

  • 第一天:Struts2的概述、Struts2的入门、Struts2常见的配置、Struts2的Action的编写
  • 第二天:Struts2的数据的封装、结果页面配置
  • 第三天:Struts2的值栈和OGNL表达式
  • 第四天:Struts2的标签库

1.3 Struts2的概述

1.3.1 Struts2的概述

1.3.1.1 什么是Struts2

在这里插入图片描述

  • Struts2是一个基于MVC设计模式的WEB层框架。
    Struts2的内核相对于Struts1来讲已经发生巨大变化。
1.3.1.2 常见的web层框架
  • Struts2
  • Struts1
  • Webwork
  • SpringMVC
1.3.1.3 Web层框架基于前端控制器模型设计

在这里插入图片描述

1.4 Struts2的入门

1.4.1 Struts2的入门

1.4.1.1 下载Struts2的开发环境

http://struts.apache.org/

1.4.1.2 解压Struts2开发包

在这里插入图片描述

  • apps :Struts2提供的应用,war文件:web项目打成war包。直接放入到tomcat可以允许。
  • docs :Struts2的开发文档和API
  • lib :Strtus2框架的开发的jar包
  • src :Struts2的源码
1.4.1.3 创建web项目,引入jar包
  • 引入jar包
    struts-blank项目下找jar包
    在这里插入图片描述
1.4.1.4 创建一个JSP页面

在这里插入图片描述

1.4.1.5 编写Action的类

在这里插入图片描述

1.4.1.6 对Action进行配置
  • 在src下创建(提供)名称叫做struts.xml的配置文件
    在这里插入图片描述
1.4.1.7 配置前端控制器(核心过滤器)

在这里插入图片描述

1.4.1.8 改写Action中的方法的返回值

在这里插入图片描述

1.4.1.9 改写struts.xml

在这里插入图片描述

1.4.1.10 编写success.jsp

在这里插入图片描述

1.5 Struts2的执行流程

1.5.1 分析Struts2的执行流程

1.5.1.1 Struts2的执行流程

在这里插入图片描述
当用户访问某一个Action的时候,先经过核心过滤器,在核心过滤器中执行一组拦截器(这组拦截器实现部分功能),执行目标Action,根据Action的返回值,进行页面跳转。

1.6 Struts2的常见配置

1.6.1 XML的提示问题

1.6.1.1 配置XML的提示

在这里插入图片描述

1.6.2 Struts2的配置文件的加载顺序(了解)

1.6.2.1 Struts2的配置文件加载顺序

在这里插入图片描述

  • init_DefaultProperties() ----加载default.properties
  • init_TraditionalXmlConfigurations(); ----加载struts-default.xml、struts-plugin.xml、struts.xml
  • init_LegacyStrutsProperties(); ----加载struts.properties
  • init_CustomConfigurationProviders(); ----加载配置提供类
  • init_FilterInitParameters() ; // [6] ----加载web.xml中过滤器初始化参数
  • init_AliasStandardObjects() ; // [7] ----加载Bean对象
1.6.2.2 加载顺序
  • default.properties
  • struts-default.xml
  • struts-plugin.xml
  • struts.xml
  • struts.properties
  • web.xml
    注意:后配置的常量的值会覆盖先配置的常量的值。

1.6.3 Action的配置

1.6.3.1 package相关配置
  • package标签称为包,这个包与Java中的包的概念不一致。包为了更好管理action的配置。
  • package标签的属性
    • name :包的名称,只有在一个项目中不重名即可。
    • extends :继承哪个包,通常值为struts-default。
    • namespace :名称空间,与标签中的name属性共同决定访问路径。
      • 名称空间有三种写法:
        带名称的名称空间 :namespace=”/aaa”
        跟名称空间 :namespance=”/”
        默认名称空间 :namespace=””
    • abstract :抽象的,用于其他包的继承。
1.6.3.2 action相关配置
  • action标签配置Action类。
  • action标签的属性
    name :与namespace共同决定访问路径
    class :Action类的全路径
    method :执行Action中的哪个方法的方法名,默认值execute
    converter :用于设置类型转换器

1.6.4 常量的配置

1.6.4.1 Struts2的常量配置

在Struts2的框架中,提供了非常多的常量:(在default.properties)

  • struts.i18n.encoding=UTF-8 ----Struts2中所有的post请求的中文乱码不用处理。
  • struts.action.extension=action, ----Struts2请求的默认的扩展名。默认扩展名是.action或者什么都不写。

在Struts2中修改一些常量的值:

  • 修改常量的值,可以有三个位置进行修正
    • struts.xml中进行修改
      在这里插入图片描述

    • struts.properties中进行修改
      在这里插入图片描述

    • web.xml中进行修改
      在这里插入图片描述

1.6.5 分模块开发的配置

1.6.5.1 include的配置

在这里插入图片描述

1.7 Action的访问

1.7.1 Action的写法

1.7.1.1 Action类是POJO的类

在这里插入图片描述

1.7.1.2 Action类实现一个Action的接口

在这里插入图片描述

1.7.1.3 Action类继承ActionSupport类

在这里插入图片描述

1. 7.2 Action的访问

1.7.2.1 通过method设置

在这里插入图片描述

1.7.2.2 通过通配符的方式进行配置(*****)

在这里插入图片描述

1.7.2.3 动态方法访问

在这里插入图片描述

  • 开启动态方法访问
    在这里插入图片描述

  • 编写访问路径
    在这里插入图片描述

1.8 CRM的客户列表显示

1.8.1 搭建开发环境

1.8.1.1 创建web项目,引入jar包
  • Struts2
  • Hibernate
1.8.1.2 引入配置文件
  • Struts2
    struts.xml
    web.xml
  • Hibernate
    核心配置
    映射文件
    日志文件
1.8.1.3 创建数据库和表
CREATE TABLE `cst_customer` (
  `cust_id` bigint(32) NOT NULL AUTO_INCREMENT COMMENT '客户编号(主键)',
  `cust_name` varchar(32) NOT NULL COMMENT '客户名称(公司名称)',
  `cust_source` varchar(32) DEFAULT NULL COMMENT '客户信息来源',
  `cust_industry` varchar(32) DEFAULT NULL COMMENT '客户所属行业',
  `cust_level` varchar(32) DEFAULT NULL COMMENT '客户级别',
  `cust_phone` varchar(64) DEFAULT NULL COMMENT '固定电话',
  `cust_mobile` varchar(16) DEFAULT NULL COMMENT '移动电话',
  PRIMARY KEY (`cust_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
1.8.1.4 创建包结构

在这里插入图片描述

1.8.1.5 引入相应页面

1.8.2 代码实现

1.8.2.1 修改请求路径

在这里插入图片描述

1.8.2.2 编写Action、Service、DAO

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.8.2.3 配置Action

在这里插入图片描述

1.8.2.4 编写页面
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值