小编use*_*199的帖子

使用 @Scheduled 注释时自动装配条目为空?

春季版本 4.2.0.RELEASE

给定以下类,当 spring 执行 cleanDocumentMirror 方法时,config 成员变为 null。我的代码本质上类似于spring example。不仅仅是这个字段,所有其他自动装配字段都为空。

我有 afterPropertiesSet 方法,该方法引用配置成员,并且它不会失败,或者换句话说,成员会正确自动连接。由于所有依赖项均已正确注入,应用程序确实可以正确启动并正常工作。仅当调用此方法时,我才会看到所有自动装配的条目为空。

该类有一些带有@JmsListener注释的方法,当spring调用这些方法时,成员看起来是正确的。仅当调用预定方法时,我才会遇到问题。所以我可能需要启用一些设置。

@Component
@Scope("singleton")
@Transactional(value = "somevalue")
@EnableTransactionManagement()
public class DownloadResponseListener implements InitializingBean {
     @Autowired
     AggregatorConfig config;

  @JmsListener(destination = "response_queue", containerFactory = "mqConnectionContainerFactory") 
public void process(final ObjectMessage message) {
    config.getConfigrationValue(); // works correctly here.
    }

  @Scheduled(fixedRate = 5 * 1000)
  void cleanDocumentMirror() {
       config.getConfigrationValue(); // causes NPE here as config is null
  }
}
Run Code Online (Sandbox Code Playgroud)

spring spring-4

6
推荐指数
1
解决办法
2747
查看次数

为什么我总是要在git pull上手动合并?

我是git的新用户,无法弄清楚如何解决这个问题.我有一些SVN的经验,并且正在接受SVN的行为.

每次我从远程存储库中提取文件,并且我修改过的文件也会远程修改,它需要合并.我可以理解复杂变化的合并冲突,但我发现合并冲突非常小(例如,不同函数中的一行变化)变化.据我所知,SVN可以自动合并大部分内容,并且只有在自动合并失败时才会将文件置于冲突状态.

对于git,它似乎每次都在发生并且强制打开git merge工具.有没有办法自动合并文件?我是否遗漏了一些基本上将存储库置于冲突集中的设置?

git git-merge

5
推荐指数
1
解决办法
1176
查看次数

在Spring Security /表单登录中输入错误的凭证时发生无限循环

据我所知,只有在我的上启用了以下bean时,它才进入无限循环。如果启用了此bean,则WebSecurityConfigurerAdapter扩展类。

@Override
@Bean(name = "MyAuthManager")
public AuthenticationManager authenticationManagerBean() throws Exception {
    return super.authenticationManagerBean();
}
Run Code Online (Sandbox Code Playgroud)

启用此bean后,如果我输入错误的凭据,它将陷入无限循环。我有从AbstractUserDetailsAuthenticationProvider扩展的自定义身份验证提供程序。如果未找到用户,则根据合同,此类将引发UsernameNotFoundException。我可以看到连续不断有电话到达我的retrieveUser。

删除@Bean批注,使其正常工作。但是我需要在其他地方访问身份验证管理器。

spring spring-mvc spring-security

4
推荐指数
1
解决办法
299
查看次数

为什么java编译器不抱怨“\s”?

在openjdk版本“15”上尝试过2020-09-15

遵循简单的线条

String str = "\s";

根据转义字符列表的官方文档,未定义 \s。

Spring 工具套件不显示“\s”的编译错误,当我使用 maven 在命令行上编译时也不显示编译错误。任何其他字符(例如 \p)都会导致以下与官方文档匹配的错误。

转义序列无效(有效的是 \b \t \n \f \r " ' \ )

为什么java编译器不抱怨\s?在控制台上打印结果字符串表明它正在输出空格字符(0x20),因此看起来它正在识别它,但只是没有记录。

java java-15

2
推荐指数
1
解决办法
228
查看次数

标签 统计

spring ×2

git ×1

git-merge ×1

java ×1

java-15 ×1

spring-4 ×1

spring-mvc ×1

spring-security ×1