前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Struts2配置

Struts2配置

作者头像
木瓜煲鸡脚
发布2019-09-19 14:52:51
6140
发布2019-09-19 14:52:51
举报
文章被收录于专栏:Jasper小笔记Jasper小笔记

Struts2配置

  1. Struts2配置
  2. 结果页配置

1

Struts2配置

配置文件加载顺序

Struts2中有很多配置文件可以去配置常量,对同一个量在不同配置文件都配置了,那么生效的肯定是最后加载的,因此需要知道配置文件的加载顺序

1.前端控制器(过滤器)类的初始化方法

2.得到dispater的initDispatcher方法

3.初始化dispater

可以得出配置文件加载顺序

init_DefaultProperties()

default.properties

init_TraditionalXmlConfigurations();

struts-default.xmlstruts-plugin.xmlstruts.xml

init_LegacyStrutsProperties();

struts.properties

init_CustomConfigurationProviders();

加载配置提供类

init_FilterInitParameters() ;

加载web.xml中过滤器初始化参数

init_AliasStandardObjects() ;

加载Bean对象

常用的配置文件加载顺序(从上往下)

default.properties

struts-default.xml

struts-plugin.xml

struts.xml

struts.properties

web.xml

struts.xml

根元素struts

package标签

  • package于action的关系就像是包和类的关系,不同的模块不同的package,每个package下可以有很多action
  • name属性:包的名称在同一个项目不重复即可
  • extends属性:继承哪个package默认是struts-default它当中定义了很多结果类型和拦截器,只有填上它才有后面的一些类型自动转化等功能
  • namespace属性:它和包名共同决定了访问路径,当它是空时只要满足最后的包名就能访问到当前包,不为空则要写上namespace与包名共同构成的别url才能访问到
  • abstract属性:开启后当前包就不能被使用,只能用来被继承

action标签

  • 首先就是配置action类,然后就是标签属性

name

与namespace共同决定访问路径

class

Action类的全路径

method

执行Action中的哪个方法的方法名,默认值execute

converter

用来自定义类型转换器,一般不设置,内部提供的转换器已经够用

常量配置

在在default.properties有很多常量的配置

(截取一段)

比如有个常量struts.i18n.encoding=UTF-8

在Struts2中post请求的中文乱码问题不用再去在代码中设置

一些时候这些常量的值我们需要修改,但是在default.properties中设置的常量我们通常不能去直接修改

我们去修改有三种方式:struts.xml、struts.properties、web.xml

一般都是使用struts.xml所以不会单独再去建struts.properties。

struts.xml中修改

通过constant标签,name和value则是default.properties的等号两边

web.xml中修改

web.xml这些常量配置在过滤器中param-name中为常量名,para-value想要设的值,注意加载顺序

外部导入include

可以通过include标签去导入其他配置文件内容,这样就不用都写着struts.xml中而是各写各的最后通过include放到struts.xml中

2

结果页配置

有的请求需要返回页面时,就可以配置结果页

请求访问到action类后,得到返回字符串返回值就会到当前的action标签去找有没有name匹配的result,没用就会到全局results下去找。最后返回指定的页面

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT那个小笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档