第三天打卡 Struts2配置

Struts配置

Struts的核心配置文件

1. 名称和位置是固定的
第三天打卡 Struts2配置
2. 在配置文件中主要有三个标签 package、action、result,标签里面的属性:

package

类似于代码包,区别不同的action,要配置action,必须首写package标签,在package里面才能配置action

package标签属性

1. name属性

  • name属性值跟功能本身没有关系的
    多个package

2. extends属性第三天打卡 Struts2配置

  • 属性值固定,struts-default
  • 写了之后,在packa里面配置的类具有action的功能

3. namespace

  • namespace属性值 和 action标签里面的 name 属性值构成访问路径(默认值为/ 可以不写)
    第三天打卡 Struts2配置

action

action 标签配置 action访问路径

action 标签属性

1. name属性

  • namespace 属性值 和 action 标签里面的 name 属性构成访问路径
  • 在 package 标签里面可以写多个 action 标签,但是 action 的 name 属性值不能相同

2. clss属性

  • action全路径

3. method的属性

  • 比如在 actio n里面默认执行的方法 execute 方法,但是可以在 action 里面写其他的方法
  • 让 action 里面多个方法执行,使用 method 进行配置

result

根据action的方法返回值,配置到不同的路径里面

result标签属性

1. name属性

  • 和方法返回值一样

第三天打卡 Struts2配置

2. type属性

  • 配置如何到路径中(转发或者重定向)
  • type属性默认值 做转发操作(地址栏不变内容改变)

常量配置

修改struts2默认常量值

第三天打卡 Struts2配置第三天打卡 Struts2配置

介绍最常用的常量

第三天打卡 Struts2配置

  1. 表单提交数据到 action 里面,在action 可以获取表单提交数据

  2. 表单提交数据有中文,有乱码问题,解决:
    (1)post 提交直接设置编码
    (2)get 提交做编码转换

  3. 如果在 action 获取表单通过 post 方式提交中文,中文乱码问题自动解决

分模块开发

1. 单独写配置文件,把配置文件引入到核心配置文件中
第三天打卡 Struts2配置
第三天打卡 Struts2配置

Action的编写方式

action编写有三种方式
  1. 第一种 创建普通类,这个类不继承任何类,不事先任何接口
    第三天打卡 Struts2配置
  2. 第二种 创建类,实现接口 Action
    第三天打卡 Struts2配置
  3. 第三种 创建类,继承类ActionSupport
    第三天打卡 Struts2配置

访问 action 的方法

有三种方式实现
  1. 第一种 使用 action 标签的 method 属性,在这个属性里面写执行的 action 方法

  2. 第二种 使用通配符方式实现

  3. 动态访问实现(不常用)

常见错误
  1. 如果 action 方法有返回值,在配置文件中没有配置,出现错误404
  2. 在action 里面的方法有返回值,如果有返回值时类型必须是String
  3. action 里面的方法可以没有返回值,没有返回值的时候,在 result 标签中不需要配置
    (1)把方法写成 void
    (2)让返回值,返回“none”
    第三天打卡 Struts2配置
使用 action 标签 method 属性
  1. 创建 action,创建多个方法
    第三天打卡 Struts2配置
  2. 使用method配置
    第三天打卡 Struts2配置缺陷:action每个方法都需要配置,如果action里面有多个方法,配置很多的action
    图片:
使用通配符实现
  1. 在 action 标签里面 name 属性,name 属性值里面写 符号 * 号
    (1)* 理解:表示匹配任意内容
    比如访问hello, * 可以匹配到第三天打卡 Struts2配置
    第三天打卡 Struts2配置
    第三天打卡 Struts2配置
    第三天打卡 Struts2配置
    第三天打卡 Struts2配置