问题标签 [spring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2704 浏览

java - 如何嵌套 Spring JMS MessageConverters

我想编写一个可以包装另一个 MessageConverter 的 MessageConverter 类。此 MessageConverter 将调用子转换器,假定它生成一个 TextMessage。它将获取有效负载并 GZIP 压缩它,创建一个 BytesMessage 最终返回给发送者。

问题出在 fromMessage() 中。我可以将有效负载转换回字符串,但随后我想创建一个“虚拟”TextMessage 将字符串填充到然后传递给子 MessageConverter 的 fromMessage() 方法。在那里我碰壁了,因为我无法在没有 JMS 会话对象的情况下创建 TextMessage,而且似乎根本无法在这种情况下获得会话。

我可以创建额外的属性来将更多的东西连接到这个类,但看起来我什至不能轻松地从 JMSTemplate 对象获取会话,而且我无法想象我还需要什么。

我即将在此代码中创建一个私有 TextMessage 实现,只是为了为子 MessageConverter 包装一个字符串。该类将需要大量的虚拟方法来充实界面,所有这些打字都会让婴儿耶稣哭泣。

任何人都可以提出更好的方法吗?

0 投票
2 回答
3229 浏览

spring - 是否可以部分自动装配弹簧豆?

我想部分地自动装配一个 bean - 也就是说,我希望一些 args 被自动装配,但其他的被显式设置。例如:

public MyClient(Service svc, boolean b)

在这个构造函数的情况下,我想在我的 xml 中指定 b 的值,但是让 svc 自动装配。那可能吗?

谢谢,洛厄尔

0 投票
21 回答
280525 浏览

spring - BeanFactory 与 ApplicationContext

我对 Spring 框架还很陌生,我一直在使用它并将一些示例应用程序放在一起,以评估 Spring MVC 以用于即将到来的公司项目。到目前为止,我真的很喜欢我在 Spring MVC 中看到的东西,看起来很容易使用,并鼓励你编写对单元测试非常友好的类。

作为一个练习,我正在为我的一个示例/测试项目编写一个主要方法。我不清楚的一件事是BeanFactory和之间的确切区别ApplicationContext- 适合在哪些条件下使用?

我理解ApplicationContextextends BeanFactory,但如果我只是写一个简单的 main 方法,我需要ApplicationContext提供的额外功能吗?究竟提供了什么样的额外功能ApplicationContext

除了回答“我应该在 main() 方法中使用哪个”之外,关于在这种情况下我应该使用哪种实现,是否有任何标准或指南?我的 main() 方法是否应该被编写为依赖于 XML 格式的 bean/应用程序配置 - 这是一个安全的假设,还是我将用户锁定在特定的东西上?

这个答案在 Web 环境中是否会发生变化 - 如果我的任何课程需要了解 Spring,他们是否更有可能需要ApplicationContext

谢谢你的帮助。我知道很多这些问题可能在参考手册中得到了解答,但是如果没有用细齿梳通读手册,我很难找到这两个接口的明确细分以及每个接口的优缺点。

0 投票
3 回答
2072 浏览

java - 是什么导致使用spring,tomcat和hibernate发生重复请求

我正在使用 spring 框架、hibernate 和 tomcat 开发一个 Java 项目。

背景:我有一个表单页面,它获取数据、验证、处理数据,并最终使用 hibernate 持久化数据。在处理数据时,我会在使用休眠之前进行一些特殊的命令(模型)操作。

问题:由于某种原因,我的 onSubmit 方法被调用了两次,第一次通过事情被正确处理。但是第二次不是;并且不正确的信息被保留。

我还注意到,在其他页面上,这些页面只是从数据库中提取信息并显示在屏幕上;那里也发生了双重请求。

有什么配置错误吗,我没有正确使用弹簧..对此有任何帮助都会很棒!

附加信息:

该应用程序仍在开发中。在测试应用程序时,我遇到了这个问题。我正在使用该应用程序,因为我希望它会被使用(单击,有效数据等......)

0 投票
6 回答
2891 浏览

java - 休眠事务问题

我们使用带有 OpenSessionInView 过滤器的 Hibernate Spring MVC。这是我们遇到的一个问题(伪代码)

我们遇到的问题是,如果验证失败 foo 在休眠会话中被标记为“脏”(因为我们使用 OpenSessionInView,我们在整个 http 请求中只有一个会话),当我们加载表单支持对象时(比如一些实体的列表使用HQL 查询),在执行查询之前休眠检查会话中是否有脏对象,它看到 foo 是并刷新它,当事务 2 提交时,更新被写入数据库。问题是即使它是一个只读事务并且即使 foo 在事务 2 中没有更新,hibernate 也不知道哪个对象在哪个事务中更新,并且不只刷新该事务中的对象。有什么建议么?以前有人遇到过类似的问题吗

更新:这篇文章进一步阐明了这个问题:http ://brian.pontarelli.com/2007/04/03/hibernate-pitfalls-part-2/

0 投票
4 回答
1719 浏览

java - 正在加载重复的弹簧配置?

我正在查看由tomcat加载的spring的输出,并且有一些非常奇怪的东西......一切都是重复的。什么会导致这个?不管是什么,它都会导致我的应用程序以奇怪的方式运行。

附加信息:

该应用程序是一个网络应用程序。所有 spring 信息都使用 web.xml 文件中定义的上下文加载器(?)加载。我的配置文件分为 6 个(左右)文件。

示例调试输出:

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[REQUIRES_SECURE_CHANNEL]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[REQUIRES_SECURE_CHANNEL]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[ROLE_READ,ROLE_UPDATE]

[DEBUG,DefaultFilterInvocationDefinitionSource,main] 添加 URL 模式:/ **;属性:[ROLE_READ,ROLE_UPDATE]

[DEBUG,AbstractFallbackMethodDefinitionSource,main] 添加安全方法 [CacheKey[com.service.impl.FooServiceImpl; public abstract java.lang.Boolean com.service.IFooService.saveOrUpdateFoo(com.model.Foo2,java.lang.String) throws org.springframework.dao.DataAccessException]] 带有属性 [[ROLE_UPDATE]]

[DEBUG,AbstractFallbackMethodDefinitionSource,main] 添加安全方法 [CacheKey[com.service.impl.FooServiceImpl; public abstract java.lang.Boolean com.service.IFooService.saveOrUpdateFoo(com.model.Foo2,java.lang.String) throws org.springframework.dao.DataAccessException]] 带有属性 [[ROLE_UPDATE]]

[INFO,AbstractSecurityInterceptor,main] 验证的配置属性

[INFO,AbstractSecurityInterceptor,main] 验证的配置属性

0 投票
17 回答
179698 浏览

java - 使用 Spring Security 时,在 bean 中获取当前用户名(即 SecurityContext)信息的正确方法是什么?

我有一个使用 Spring Security 的 Spring MVC Web 应用程序。我想知道当前登录用户的用户名。我正在使用下面给出的代码片段。这是公认的方式吗?

我不喜欢在这个控制器中调用静态方法——这违背了 Spring 的全部目的,恕我直言。有没有办法将应用程序配置为注入当前的 SecurityContext 或当前的身份验证?

0 投票
2 回答
823 浏览

java - 使用 spring 分离测试和数据有什么缺点吗?

我一直在努力想出一个好的解决方案来将我的测试数据与单元测试(硬编码值)分开。直到我意识到我可以用 spring 创建 bean 并使用这些 bean 来保存我的数据。

以这种方式编码我的单元测试有什么缺点吗?尽管它们运行得有点慢,因为 Spring 必须配置所有 bean 以及什么不是。

0 投票
9 回答
38222 浏览

java - 弹簧和接口

我到处阅读有关 Spring 如何鼓励您在代码中使用接口的信息。我没看到。spring xml 配置中没有接口的概念。Spring 的哪一部分实际上鼓励您使用接口(除了文档)?

0 投票
2 回答
2408 浏览

hibernate - Spring & Hibernate EJB 事件

是否可以定义一个弹簧管理的 EJB3 休眠监听器?

我的persistence.xml中有这个定义:

但我想管理HibernateAuditInterceptorHibernateAuditTrailEventListener使用 spring,所以我可以在这些类中做一些 bean 注入(例如:会话范围的 bean)。这可能吗?