草庐IT

spring - 以编程方式重启 Spring Boot 应用程序

我正在使用SpringBoot,并且我有一个用例,用户可以上传一个应该导致应用程序重新启动的文件(因为在创建多个bean期间使用了用户的上传)。我知道我可以避免重新启动应用程序,但目前-这就是我想要的。我找到了RestartEndpoint在Spring-Cloud项目中,但似乎没有触发ApplicationPreparedEvent。有没有其他方法可以以编程方式重新启动SpringBoot应用程序? 最佳答案 最简单的方法是调用refresh()SpringApplicationContext上的方法。这将杀死并重新加载您的所有b

Spring Boot 与 Spring Batch 和 JPA 的集成

我正在将一个springboot项目与一个spring批处理和数据jpa项目集成。与作业和数据配置相关的所有内容都是正确的,除了将我的作业编写器结果保存在数据库中。在我读取一个文件并处理它之后,我无法将它写入mysql数据库。没有错误,但也没有插入。有趣的是我的数据源已配置。因为在插入之前,我可以从数据库中获取示例记录。请帮助我解决这个问题。我的应用程序属性:spring.datasource.url=jdbc:mysql://localhost:3306/batchtest?characterEncoding=UTF-8&autoReconnect=truespring.da

mysql - Spring Boot SSH Mysql?

我可以通过工作台成功连接到我的openshiftmysql,我如何通过我的springboot应用程序做到这一点?在我的application.properties中:#Connectionurlforthedatabasespring.datasource.url=jdbc:mysql://:@:/#Usernameandpasswordspring.datasource.username=spring.datasource.password=我在哪里提供我的私钥? 最佳答案 为了通过SSH(例如使用MySql-Openshift

java - 如何使用 Spring Shell 在 Spring Boot Web 应用程序中构建控制台命令?

我使用springbootwebstarter创建了restfullweb应用程序,效果很好。我可以通过网址访问它。但我需要创建可以在后端计算和存储一些值的控制台命令。我希望能够手动或通过bash脚本运行控制台命令。我找不到任何关于如何在SpringBootWeb应用程序中集成spring-shell项目的文档。在springbootstarter中也没有选择spring-shell依赖的选项https://start.spring.io/1)webapp和控制台是否需要是两个独立的应用程序,我需要分别部署它们吗?2)是否可以在同一个应用程序中部署Web应用程序并运行控制台命令?3)在

spring - Spring Boot 中的主/次故障转移数据源

我有一个SpringBoot应用程序,需要有一个主要和次要数据源。我需要实现一些关于在出现连接问题时如何重新连接的逻辑。由于Spring为您建立连接,因此我似乎无法告诉它在出现问题时重新连接。我知道如何制作2个数据源,但是处理何时使用哪一个的逻辑的最佳位置在哪里。逻辑需要这样工作:连接到主节点如果出现连接问题、资源不可用或连接超时,请尝试重新连接到主节点。如果Primary无法连接,请尝试连接到Secondary如果辅助节点无法连接,请继续重试第2步和第3步X分钟。最好/可能在SpringService中处理这个问题?我应该有一个不同的服务来处理这个逻辑并且我的其他服务使用它吗?不使用

java - 为什么 Swing 认为它在 Spring Boot 下是 headless 的,而在 Spring 或纯 Java 下却不是?

以下代码有效:importjavax.swing.*;publicclassHeadlessExceptionDemo{publicstaticvoidmain(String[]args){JFrameframe=newJFrame("HeadlessExceptionDemo");frame.setSize(800,600);frame.setLocationRelativeTo(null);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}以下代码也可以:importorg.s

java - spring-boot :repackage and mvn package之间的区别

在阅读了Spring文档和网络上的其他一些文章之后,我仍然很困惑SpringBootMaven插件的spring-boot:repackage和常规mvn包有什么区别>.我认为mvnpackage创建了一个包含所有依赖项的jar,那么Spring使用该插件的真正原因是什么? 最佳答案 ma​​ven包目标和spring-boot:repackage目标在本质上是不同的。spring-boot重新打包目标主要是使用java-jar*.jar从命令行本身制作JAR或WAR可执行文件,而mavenpackage目标则采用编译后的代码并将其

spring - 如何使用 Spring Boot 自动重定向到 https

如何轻松配置嵌入式tomcat服务器以将所有http流量重定向到https?我在弹性负载均衡器后面的ec2实例上运行SpringBoot。我已将ELB配置为为我处理ssl(这很棒),并将X-FORWARDED-PROTOheader设置为“https”。我想检测何时未设置,并重定向用户以强制他们使用https(如果尚未设置)。到目前为止,我尝试将以下内容添加到我的application.properties文件中,但没有成功:server.tomcat.protocol-header=x-forwarded-protosecurity.require-ssl=true

java - Spring 安全性和自定义 AuthenticationFilter 与 Spring boot

我有自定义身份验证过滤器,它创建PreAuthenticatedAuthenticationToken并将其存储在安全上下文中。这一切都很好。这是配置:@Configuration@EnableWebMvcSecuritypublicclassWebSecurityConfigextendsWebSecurityConfigurerAdapter{@AutowiredprivateSsoAuthenticationProviderauthenticationProvider;@AutowiredprivateSsoAuthenticationFilterssoAuthenticatio

java - 对公共(public)和私有(private)资源使用不同的路径 Jersey + Spring boot

我正在使用Springboot+Jersey+Springsecurity,我想要公共(public)和私有(private)端点,我想要如下架构:/rest--我的根上下文/public--我想将我的公共(public)端点放在这个上下文中,它必须在根上下文中,例如/rest/public/pings/private--我想将我的私有(private)端点放在这个上下文中,它必须在根上下文中,例如/rest/private/accounts我的配置如下:Jersey配置:@Configuration@ApplicationPath("/rest")publicclassRestCon