JVM如何在Java REST应用程序中工作?

时间:2018-08-27 06:53:28

标签: java spring apache hibernate

我正在基于 Spring + hibernate + maven 工具的Java REST 应用程序中工作。

在这里,我的应用程序包含列出的Java文件

  1. UserEntity
  2. UserDao
  3. UserDto
  4. 服务
  5. ServiceImplementation
  6. 控制器
  7. ApplicationInitializer
  8. BeanTransformerUtil
  9. RestDataApplicationResponse
  10. RestDataCollectionError

其他文件

persistence.xml
pom.xml
application.properties

ApacheServer 如何加载这些文件? JVM 内部工作?我对此感到困惑,请帮助我深入了解这些内容。谢谢。

1 个答案:

答案 0 :(得分:0)

以下是弹簧靴的工作原理。

从run方法开始,启动主应用程序上下文,该上下文依次搜索以@Configuration注释的类,初始化这些配置类中的所有声明的bean,并根据这些bean的范围将这些bean存储在jvm,特别是在JVM内部的空间(称为IOC容器)中。创建所有bean之后,将自动配置调度程序servlet并注册默认的处理程序映射,messageConverts和所有其他基本内容。

基本上,春季启动支持三种嵌入式服务器:-Tomcat(默认),Jetty和Undertow。

当您将应用程序标记为spring boot应用程序时,它会开始搜索您提到的所有注释,以便根据我的意愿进行配置

您可以在春季启动时在其中一个配置文件中添加交叉过滤器,

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/api/**");
    }
}