Struts Controller

小暴君_洋子

小暴君_洋子

2016-02-19 14:59

岁数大了,QQ也不闪了,微信也不响了,电话也不来了,但是图老师依旧坚持为大家推荐最精彩的内容,下面为大家精心准备的Struts Controller,希望大家看完后能赶快学习起来。

  关于controller中的Action:(ActionServlet也是多线程的)

  因为Action类是线程安全的,所以在应用程序中创建Action类的唯一实例;Struts中使用lazy Singleton,也就是先判断是否存在实例,若不存在,则创建实例,且对创建实例的代码进行了Synchronization,从而保证同一时刻只有一个线程可以创建Struts的实例。

  除此之外,确保Action类不使用实例变量来存储客户特有的状态,对于客户的特有状态,应该在execute中

  使用局部变量来保存。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  Struts中大量使用了Resource Wrapper

  原理可以这样形容:所有在资源实际在配置文件中指定,然后再内存中由一个类的实例来代表,这样要修改资源配置的话,只需要修改相应的.xml文件就可以了

  For Example:

  config.ControllerConfig类 ----〉controller元素中配置的信息

  ActionMapping----- action元素,其中findForward()---findForwardConfig()是否在动作级设定

  forward,然后检查global-forward元素

  ActionForward-----forward元素的;web资源的抽象,比如jsp页面和java servlet

  Action类应把业务逻辑委托给模型组件

  actions包中有五个action类:

  ForwardAction:执行一个到parameter中配置的uri的forward。

  IncludeAction:可以用来实现RequestDispatcher中的include();但我不是很清楚

  DispatchAction:需要给出它的子类,为需要在服务上执行的每个功能添加一个方法(必须DispatchAction调用的Action类包含一个方法)在配置时必须定义parameter属性,它使用parameter的值决定调用什么方法

  想法是把联合完成一个大功能的多个action类放在同一个类中

  注意点:DispatchAction使用java Reflection 来调用正确的方法,但是这些方法必须为public

  LookupDispatchAction:是DiapatchAction的子类,但是使用请求参数值,利用参数值反向查询资源邦定,并将其与类中的方法进行匹配

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  SwitchAction:支持从一个应用程序模块切换到另一个

  两个参数:page(目的地)和prefix(源)

  Struts中的实用类:

  util中

  RequestUtils:线程安全的,没有实例变量,且其中所有方法均为static的。协助处理一个请求

  ResponseUtils:协助建立一个响应

  beanutils中:

  BeanUtils:populate():使用key/value映射,把data装入JavaBean中;

  :getProperty():返回property的string表示

  :getArrayProperty():string数组

  PropertyUtils:getProperty():返回属性的值,不改变属性的类型。

  commons:

  FastHashMap:多线程的,是HashMap的子类,有slow和fast两种模式 .

展开更多 50%)
分享

猜你喜欢

Struts Controller

编程语言 网络编程
Struts Controller

Struts框架之构建Controller组件

编程语言 网络编程
Struts框架之构建Controller组件

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Hibernate+Spring+Struts扩展Struts

Java JAVA基础
Hibernate+Spring+Struts扩展Struts

Struts用户指南

编程语言 网络编程
Struts用户指南

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

[Struts]配置第一个Struts 应用

编程语言 网络编程
[Struts]配置第一个Struts 应用

struts 开发

编程语言 网络编程
struts 开发

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

实战每晚构建07

实战每晚构建07

Java 理论与实践: 线程池与工作队列

Java 理论与实践: 线程池与工作队列
下拉加载更多内容 ↓