0 0

关于Struts1.X中Action单例的问题5

关于Struts1.X中Action单例的问题,一直都是有这个概念,但是一直没有去source code中验证。今天看了下源码,发现没有找到实例化Action这个类的方法, 然后发现了ActionBean(XXXAction)的实例化貌似都是只实例化一次,然后放在一个map中,key值是actionmapping中的type属性。
所以这里想问问,所谓的action单例是指Action这个类单例还是指继承他的ActionBean单例?

问题补充:
chenhailong 写道
Action 不是接口吗?怎么单例
实现Action的类是单例的,因为在sturts1中的配置文件中定义的javabean是可以指定是否是单例的 但对于Action的实现类来说。是没有这个标签的,我猜内部会处理


Action不是借口, org.apache.struts.action.Action是个类哦。不过确定为实现Action的类是单例我就想通了。谢谢了

问题补充:没关系 谢谢你参与回答
chenhailong 写道
哦 抱歉 Action在Struts2中好像就是接口了,抱歉啊

2012年5月20日 14:44

2个答案 按时间排序 按投票排序

0 0

哦 抱歉 Action在Struts2中好像就是接口了,抱歉啊

2012年5月23日 10:28
0 0

Action 不是接口吗?怎么单例
实现Action的类是单例的,因为在sturts1中的配置文件中定义的javabean是可以指定是否是单例的 但对于Action的实现类来说。是没有这个标签的,我猜内部会处理

2012年5月22日 06:10

相关推荐

    spring,struts1.x ,hibernate整合

    1. **使用 `DelegatingRequestProcessor`**:在 `struts-config.xml` 中设置 `processorClass`,将 Action 请求处理委托给 Spring。在 Spring 配置文件中,你需要为每个 Action 创建一个 Bean 并设置相应的依赖。 2...

    java框架面试题 ssh

    - **线程模式**:Struts 1.x Action是单例模式,需要处理线程安全问题,而Struts 2.x 为每个请求创建Action实例,避免了线程安全问题。 - **Servlet依赖**:Struts 1.x Action直接依赖Servlet API,Struts 2.x ...

    struts1&struts2

    - **Struts1.x** 的Action类是单例模式,所有请求共享同一个Action实例,这需要确保Action资源是线程安全的。 - **Struts2** 为每个请求创建新的Action实例,解决了线程安全问题,同时也更易于管理和测试。 5. **...

    JAVA-SSH面试题.doc

    - 线程模式:Struts1.x的Action是单例的,需要保证线程安全,而Struts2.x为每个请求创建一个新的Action实例,避免了线程安全问题。 - Servlet依赖:Struts1.x的Action直接依赖于Servlet API,而Struts2.x减少了对...

    Java面试题专题之SSH框架-ssm框架面试题.docx

    - **线程模型**:Struts1.x的Action是单例的,需要处理线程安全问题;Struts2.x的Action默认为多例,每个请求对应一个新的实例。 - **配置方式**:Struts1.x的配置文件是struts-config.xml,而Struts2.x使用struts...

    Structs1.x与Structs2.0的区别

    Structs1.x的Action是单例模式,并且必须是线程安全的,因为仅有Action的一个实例来处理所有的请求。单例策略限制了Structs1.x Action能作的事,并且要在开发时特别小心。Action资源必须是线程安全的或同步的。 ...

    struts-1.3.8-src.zip

    Struts 1.3.8是该框架的一个版本,发布于2007年,是Struts 1.x系列中的一个稳定版本。这个版本包含了对早期版本的改进和修复,旨在提高性能和稳定性。 在"struts-1.3.8-src.zip"压缩包中,主要包含的是Struts 1.3.8...

    Java求职面试宝典各大公司常考知识点

    4.3. Struts1.x的validate框架是如何验证的? 8 4.4. 说下Struts的设计模式 8 4.5. 谈谈你mvc的理解 8 4.6. struts1.2和struts2.0的区别?如何控制两种框架中的单例模式? 9 4.7. struts如何实现国际化 9 4.8. ...

    Struts+Hibernate+Spring面试题合集及答案常见题目经典精选汇总大全.docx

    - Struts1.x的设计模式包括MVC模式和Front Controller模式,Controller(ActionServlet)接收所有请求,转发给相应的Action处理。 - Struts2.0引入了更多特性,如OGNL表达式语言,拦截器机制等,且提供了更灵活的...

    Struts 2 began as WebWork.

    Struts 2的诞生是在2005年,当Apache软件基金会决定将WebWork与Apache Struts 1.x合并,以创建一个更强大、更现代的框架。这次合并的结果就是Struts 2,它继承了WebWork的强大功能,并融合了Struts 1的社区支持和...

    struts+spring环境搭建

    - **线程模式**:Struts1采用单例模式,要求Action线程安全;Struts2则为每个请求创建Action实例,避免线程安全问题。 - **Servlet依赖**:Struts1的Action直接依赖于Servlet API,而Struts2 Action可以脱离容器...

    Struts2教程(完整)

    - **Struts1**:Action类是单例模式且必须保证线程安全,这限制了Action的功能。 - **Struts2**:Action类被设计为可创建多个实例的Bean,这使得Action可以更加灵活地处理不同的请求。 - **数据绑定**: - **...

    struts2结合spring的jar包.rar

    1. **struts2-core-2.5.26.jar**:这是Struts2的核心库,包含了Struts2框架的基础组件,如Action、Interceptor、Result等,以及配置解析和请求处理机制。 2. **freemarker-2.3.8.jar**:Freemarker是一个模板引擎,...

    JAVA-SSH相关面试题

    - **线程模式**:Struts1使用单例模式的Action,需保证线程安全,而Struts2为每个请求创建Action实例,避免了线程安全问题。 - **Servlet依赖**:Struts1的Action直接依赖Servlet API,而Struts2降低了对容器的依赖...

    海辉面试题

    Struts1.X的action与struts2的action是否都为单例模式 - **Struts1**:Action是单例模式。 - **Struts2**:默认情况下,Action也是单例模式,但可以通过配置实现每次请求一个新的实例。 #### 10. Struts1.X与...

    clj资源parttwo

    3. **Struts 中文帮助.CHM**:这是Struts 1.x版本的帮助文档,涵盖了Struts框架的基础知识,如Form Bean、Action、JSP标签库等,对于理解早期的MVC框架有重要作用。 4. **设计模式迷你手册.chm**:设计模式是软件...

    java工程师面试题

    - **Struts 1.x**:主要关注于Servlet/JavaServer Pages技术,使用ActionServlet作为中心控制器。 - **Struts 2.x**:是一个更加灵活的框架,基于拦截器架构,可以与其他框架如Spring和Hibernate无缝集成。 #### ...

Global site tag (gtag.js) - Google Analytics