Vai*_* PS 0 java spring tomcat spring-boot
我正在使用 Spring Boot 嵌入式 tomcat。
在我的应用程序中,我有三个配置类,并且我使用@Order注释来控制类的加载顺序。当我在嵌入式 Tomcat 中运行应用程序时,它工作正常,但在独立 Tomcat (WAR) 中,它没有按正确的顺序加载。
我的课程如下:
@Order(1) public Class WebConfig
@Order(2) public Class SwaggerConfig
@Order(3) public Class PlanoutConfig
Run Code Online (Sandbox Code Playgroud)
@Order定义带注释的组件的排序顺序,而不是配置类的排序顺序。
\n我认为在嵌入式 Tomcat 模式下,您会受益于副作用。
如果您的类是配置类,即带有 注释的类@Configuration,则Spring Boot 文档指出您应该优先@AutoconfigureOrder于@Order。
\n\n\n44.1 理解自动配置的bean
\n\n如果您想要订购某些不应该\xe2\x80\x99 彼此有任何直接了解的自动配置,您也可以使用\n
\n@AutoconfigureOrder。该注释与\n 常规注释具有相同的语义@Order注释具有相同的语义,但为自动配置类提供了专用的顺序。
\n\n\nRun Code Online (Sandbox Code Playgroud)\n\npublic @interface AutoConfigureOrder\nSpring 框架的 Order\n 注释的自动配置特定变体。允许自动配置类在它们之间排序,而不影响传递给 AnnotationConfigApplicationContext.register(Class...) 的配置类的顺序。
\n
你可以这样写:
\n\n@AutoConfigureOrder(0) public Class WebConfig {...}\n@AutoConfigureOrder(1) public Class SwaggerConfig {...}\n@AutoConfigureOrder(2) public Class PlanoutConfig {...}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
9729 次 |
| 最近记录: |