草庐IT

Spring-boot-websocket

全部标签

java - Spring Batch Reader 的游标在 JTA 事务管理步骤中提前关闭

相关步骤的工作配置如下:Step、SpringBatchJobRepository和业务存储库(使用各种数据源)都使用JTA事务管理器。步骤“myStep”使用JdbcPagingItemReader。WebLogic、OracleXE和/或EE我想分析“myStep”中JdbcCursorItemReader的性能,但是在第一次提交后,第二个block的第一次读取将失败并出现java.sql.SQLException:结果集已关闭。我怀疑可能是JTA/XA驱动程序出于某种原因关闭了游标,因此我为“myStep”提供了一个简单的数据源事务管理器(在读者正在使用的数据源上),并且该步骤能

java - 如何在 Spring Boot 应用程序中配置 DispatcherServlet?

在传统的SpringWeb应用程序中,是否可以覆盖AbstractDispatcherServletInitializer.createDispatcherServlet,调用super.createDispatcherServlet,然后在返回的实例上设置以下初始化参数?setThreadContextInheritablesetThrowExceptionIfNoHandlerFound如何在SpringBoot应用中实现这一点? 最佳答案 您可以定义自己的配置并实现它,如下所示:@Configurationpublicclas

java - Spring Boot 不加载 application.yml 配置

我有一个简单的主应用程序:@Configuration@EnableAutoConfiguration@ComponentScan(basePackages="dreamteam.eho")@Import({EhoConfig.class})publicclassMainAppimplementsCommandLineRunner,ApplicationContextAware{配置:@Configuration@EnableConfigurationProperties({RootProperties.class})publicclassEhoConfig{}和属性:@Configu

java - Spring Cache 不适用于抽象类

我正在尝试在抽象类中使用SpringCache,但它不起作用,因为据我所知,Spring正在抽象类中搜索CacheNames。我有一个使用服务层和Dao层的RESTAPI。这个想法是为每个子类使用不同的缓存名称。我的抽象服务类如下所示:@Service@TransactionalpublicabstractclassAbstractService{...@CacheablepublicListfindAll(){returngetDao().findAll();}}抽象类的扩展如下所示:@Service@CacheConfig(cacheNames="textdocuments")pu

java - Spring websockets Broken pipe & client 没有收到消息

我在使用websockets时遇到了一些问题:java.io.IOException:BrokenPipe客户端没有收到消息长话短说我想知道的主要事情:请列出客户端关闭连接的所有可能情况(刷新或关闭选项卡除外)。除了服务器通过断开的连接向客户端发送消息之外,是否会发生断开的管道异常?如果是,那么如何?尽管服务器确实发送心跳,但服务器不发送消息的可能情况有哪些?(发生这种情况时,我需要重新启动应用程序才能使其再次工作。这是一个糟糕的解决方案,因为它已经投入生产。)我有一个使用websockets的SpringMVC项目;SockJS客户端和org.springframework.web.

java - 在 Spring Boot 中将 Oauth2 与 formlogin 和执行器安全性相结合

我正在使用SpringBoot1.5.9并且有一个应用程序具有使用OAuth2客户端凭据的API,以及在同一个SpringBoot应用程序中使用Thymeleaf的CMS的formlogin。为此,我使用以下bean来配置表单登录:@ConfigurationpublicclassWebSecurityGlobalConfigextendsWebSecurityConfigurerAdapter{@AutowiredprivateUserDetailsServiceuserDetailsService;@AutowiredprivatePasswordEncoderpasswordEn

java - Spring属性解密

我们混合了一些尚未迁移到spring-boot或springcloud的遗留spring应用程序以及springboot应用程序。我正在创建一个Spring组件,如果属性值被加密并具有前缀,它将在加载环境时自动解密spring属性。这些属性可以在.properties文件中(对于遗留应用程序)或在.yaml文件中(较新的springboot应用程序)。无论来源如何,该组件都应该能够解密任何spring属性,并且应该与任何spring版本一起工作,而不是绑定(bind)到springboot。该组件还应该透明地解密属性。它应该从属性文件中读取密码,因此需要在开始时加载密码文件。我们有自己

java - 在 Spring 中为不同数据源设置事务的正确方法?

我有一个应用程序需要连接到多个数据库。这是一个管理应用程序,主要用于管理不同数据库中的条目-我们不需要同时访问多个数据库,也不需要任何类型的分布式事务管理。基本上,应用程序的一个区域允许您在数据库A中创建小工具,而应用程序的另一个区域允许您在数据库B中配置类似的小工具。当只使用一个数据源时,我们已经设置了事务并完美地工作。配置如下所示:这会在CompanyService中的任何方法的任何执行上设置一个切入点并将事务建议与切入点相关联,切入点需要为名称以“create”开头的任何方法进行事务处理。交易建议与绑定(bind)到数据源的TransactionManager相关联。添加第二个(

java - Quartz & Spring - 集群但不持久?

在我的Spring应用程序中,我使用SchedulerFactoryBean与Quartz集成。我们将拥有集群Tomcat实例,因此我想要一个集群Quartz环境,这样相同的作业就不会在不同的Web服务器上同时运行。为此,我的app-context.xml如下:SomeBatchSchedulerAUTO60000org.quartz.simpl.RAMJobStore-->org.quartz.impl.jdbcjobstore.JobStoreTXorg.quartz.impl.jdbcjobstore.StdJDBCDelegateQRTZ_trueorg.quartz.simp

java - Spring组件扫描的性能是否取决于扫描包的大小?

在我们的应用程序中,我们遇到了组件扫描的性能问题。它非常慢,并且其性能不依赖于扫描包中的类数。我们的sping配置文件中的每一行都是这样的:将我们应用程序的启动时间增加2分钟。扫描包中的类数无关紧要-对于具有10类和1k类的包,我们遇到了相同的延迟。为什么组件扫描的性能不依赖于扫描包的大小?我们使用混合方法来创建springbean——我们同时使用xml定义和组件扫描。这可能是这种行为的原因吗? 最佳答案 Spring所做的就是遍历component-scan中你给的包中的所有类如果该类有组件、存储库或服务,它会在上下文中注册一个b