Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Spring和Struts2集成

Spring和Struts2集成
EN

Stack Overflow用户
提问于 2011-06-30 09:43:57
回答 2查看 1.6K关注 0票数 0

这是一个设计层面的问题,我需要关于什么是更好的方法的意见。

我正在开发的应用程序使用Struts2和Spring (用于依赖注入)。每个Action类都调用服务层来执行业务功能。所有数据都保存在模型类中。每个动作都使用模态来保存/编辑数据。这些Modal类被定义为具有getter/setter的类的私有成员。

问题1)我们是否应该将Modal类定义为应用程序上下文中的Beans?目前我还没有。在表单提交时,Struts本身创建实例。在编辑时(当我想在屏幕上显示数据时),我必须显式地创建模式(使用new )。更好的方法是什么?

问题2) aplCntx中操作类的bean是否应该定义为scope=“原型”?Struts本身会不会注意创建操作类的新实例?

EN

回答 2

Stack Overflow用户

发布于 2011-06-30 16:04:35

问题1:

正如Jigar所说,您不需要在应用程序上下文中将操作字段定义为bean,因为在大多数情况下,它们只是在页面和应用程序之间传递数据,所以最有可能的情况是,您从服务层创建了它们,并且只想将它们传递给页面以供呈现,或者它们的数据是从页面提交的,在这种情况下,struts2负责实例化。

问题2:

在struts2中有一个对象工厂,默认情况下它负责操作的创建。您可以对此进行更改,并指定spring来处理操作创建。首先,您必须将spring plugin for struts2添加到类路径中,然后将以下行添加到struts2配置文件中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory"/>

然后为您的操作创建bean,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<bean id="myActionBean" class="com.my.myAction" scope="prototype">
    ... required properties ...
</bean>

请记住,您必须将作用域设置为prototype,这就是它对struts2的工作方式。然后在您的struts配置文件中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<action name="myaAction" class="myActionBean">
    ... required result mapping ...
</action>
票数 3
EN

Stack Overflow用户

发布于 2011-06-30 09:46:24

1)我们应该将Modal类定义为应用程序上下文中的Beans吗?目前我还没有。在表单提交时,Struts本身创建实例。在编辑时(当我想在屏幕上显示数据时),我必须显式地创建模式(使用new )。更好的方法是什么?

不是的。您不应该在spring上下文中定义modal,它们应该只是简单的POJO

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6532884

复制
相关文章
redis和spring集成
redis和spring框架的整合 我这里创建的是maven工程,通过maven锁定版本号,管理jar包之间的依赖 1.在pom文件中,引入spring和redis的jar包的坐标: <properties> <junit.version>4.12</junit.version> <spring.version>4.2.4.RELEASE</spring.version> <jedis.version>2.7.2</jedis.version>
用户2146856
2018/05/18
1.1K0
Spring集成Hadoop和Hbase
hadoop是大数据环境下必备的一套系统,使用hadoop集群可以充分的共享服务器资源,在离线处理上已经有了多年的应用。
Tim在路上
2020/08/04
1.5K0
Fastjson 和 Spring 进行集成
如果你使用 Spring MVC 来构建 Web 应用并对性能有较高的要求的话,可以使用 Fastjson 提供的FastJsonHttpMessageConverter 来替换 Spring MVC 默认的 HttpMessageConverter 以提高 @RestController @ResponseBody @RequestBody 注解的 JSON序列化速度。下面是配置方式,非常简单。
acc8226
2022/05/17
5330
spring整合struts2
spring 与struts2整合,由于struts是一个web框架,所以需要在项目中加入spring与web相关的包。其次,在web中应用spring时应该在web应用加载时就创建IOC容器(ApplicationContext),所以在web应用初始化时就创建。spring框架在web应用的ServlteContextListener的init方法中获取了Ioc容器,并将其放入ServletContext(即application)对象中,我们在使用时只需要从application中取出来就可以了。sp
yawn
2018/03/14
5990
Struts2【整合Spring】
前言 Spring的第二和第三篇已经讲解了Spring的基本要点了【也就是Core模块】…本博文主要讲解Spring怎么与Struts2框架整合… Struts2和Spring的整合关键点: action对象交给Spring来创建 搭建环境 进入jar包 引入jar文件: 1)引入struts .jar相关文件 2)spring-core 相关jar文件 3)spring-web 支持jar包 spring-web-3.2.5.RELEASE.jar 【Spring源码】 struts2
Java3y
2018/03/15
6780
Struts2【整合Spring】
集成Spring Cloud Security和Spring Cloud Gateway
Spring Cloud Security提供了在分布式系统中使用OAuth2和JWT的支持。而Spring Cloud Gateway是一个基于Spring Framework 5,Spring Boot 2和Project Reactor的网关服务,它为微服务架构提供了一种简单而有效的方式来对外提供API。
堕落飞鸟
2023/04/14
3.5K0
集成Spring Cloud Sleuth和Zipkin
Spring Cloud Sleuth提供了分布式跟踪的能力,可以帮助开发人员跟踪请求流程和调用链信息。而Zipkin则是一款开源的分布式跟踪系统,可以帮助开发人员更好地理解分布式系统中的请求流程和调用链信息。本文将介绍如何集成Spring Cloud Sleuth和Zipkin,以及如何使用它们来跟踪请求流程和调用链信息。
堕落飞鸟
2023/04/11
4710
spring同时集成mybatis和ibatis
最近来了一个新项目,说是新的项目,但是需要用到以前旧的模块代码,旧的模块使用架构为ssi
一笠风雨任生平
2019/08/02
1.5K0
shiro 和 spring boot 的集成
使用 shiro-spring-boot-web-starter 在 spring boot 中集成 shiro 只需要再添加一个依赖
Carlos Ouyang
2019/08/19
1.9K0
shiro 和 spring boot 的集成
Spring Boot 集成Shiro和CAS
Spring Boot 集成Shiro和CAS 请大家在看本文之前,先了解如下知识点:  1、Shiro 是什么?怎么用?  2、Cas 是什么?怎么用?  3、最好有Spring基础 可以先看看这两篇文章,按照这2篇文章的内容做一遍:  Spring Boot Shiro 权限管理 CAS单点登录 首先看一下下面这张图:  第一个流程是单纯使用Shiro的流程。  第二个流程是单纯使用Cas的流程。  第三个图是Shiro集成Cas后的流程。 【流程图高清图连接:http://img.blog.csdn
庞小明
2018/03/09
7K0
Spring Boot 集成Shiro和CAS
spring之整合struts2
基本流程如下:在PersonAction装配PersonService,在execute方法中打印相关信息并调用personService的save方法,最后返回"success"。在PersonService中的save方法输出一句话。
西西嘛呦
2020/08/26
2850
spring之整合struts2
SSH框架完全整合 整合Spring和Hibernate:Spring整合Struts2
大三学期渐末,事情也挺多的,上周就开始着手整合SSH框架,到现在才真正的完成,过程中碰到了许多小问题(小问题大折腾,哭脸.jpg)。本着善始善终的原则,最终把它给完成了。 本篇文章就在: win7
MindMrWang
2018/04/16
2.5K0
SSH框架完全整合	整合Spring和Hibernate:Spring整合Struts2
Spring Web MVC和Hibernate的集成
网上看到很多关于Spring与Hibernate的集成的文章,奈何由于那些文章写作时间较早,很多都是Spring 3 和Hibernate 4等较旧的版本。所以我在这里使用更新的版本来说明一下。
乐百川
2022/05/05
7220
[享学Netflix] 十五、Archaius和Spring Cloud的集成
截止到上篇文章,其实关于Netflix Archaius的内容都已经讲述完了,理论上你现在应该可以没有障碍的使用它了。
YourBatman
2020/03/18
2K0
Spring集成MyBatis
在 Dao 接口的包中创建 MyBatis 的映射文件 UserMapper,命名与接口名相同,本例为UserMapper.xml。mapper 中的 namespace 取值也为 Dao 接口的全限定性名。
全栈程序员站长
2022/09/02
5950
spring dubbo集成(@autowired和构造器注入)
前面两种有一定的局限性,很多缺点,具体就不一一列举,有兴趣的同学可以研究一下,今天就给大家讲如何实现第三种方式
全栈程序员站长
2022/07/30
8870
spring dubbo集成(@autowired和构造器注入)
MyBatis快速入门(四) MyBatis和Spring集成
前面介绍了MyBatis的相关知识,现在来介绍一下如何和Spring进行集成。MyBatis和Spring的集成工作是由MyBatis团队完成的。所以我们首先要先引入MyBatis和Spring的集成依赖包。这里我用的是Gradle,如果使用其他构建工具,将下面的语句改为相应的。
乐百川
2022/05/05
3210
Shiro集成Spring
1、Shiro集成Spring,使用maven进行jar包的依赖与管理,pom.xml的配置文件,如下所示:
别先生
2020/09/01
1.3K0
Shiro集成Spring
Spring集成MyBatis
如果觉得Hibernate不够灵活,可以尝试用Mybatis。相比于Hibernate,Mybatis则显得更加轻量、更加灵活,对于我这种不喜欢被束缚的人,使用Mybatis更加顺手、舒心一些。 My
古时的风筝
2018/01/08
1.5K0
Spring集成MyBatis
Shiro 集成 Spring
本章我们来学习 Shiro 集成 Spring,即在 Web 环境下如何使用 Shiro 来进行权限控制。
一份执着✘
2018/08/27
7200

相似问题

struts2和spring jdbc集成

13

如何集成Spring Security和Struts2

21

集成struts2 spring hibernate和ehcache

20

Struts2和Spring集成线程安全

13

解释Struts2、Spring和Hibernate集成的教程

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文