You are here

Spring Boot

在idea中实现热部署

第一步:引入热加载的插件,springboot 1.3开始就有的

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

project 中添加spring-boot-maven-plugin,主要在eclipse中起作用,idea不需要加此配置,springboot 项目的话,应该是有此配置,加里面的内容即可。

配置排序依赖技巧

Spring Boot 提供了很多新的注解,但是要注意这个包下面的所有注解

org.springframework.boot.autoconfigure

这个包下面常见的注解有:

  • @AutoConfigureAfter
  • @AutoConfigureBefore
  • @AutoConfigureOrder
  • @AutoConfigurationPackage
  • @EnableAutoConfiguration
  • @SpringBootApplication

前 3 个是不能在普通项目中使用的,这 3 个注解是特地用于 autoconfigure 类的项目,后面 3 个注解是可以用于我们自己项目中的。

上面的注解只在 AutoConfigurationSorter 类中排序时用到了。被排序的这些类,都是通过 xxx-spring-boot-autoconfigure 项目中的 src/resources/META-INF/spring.factories 配置文件获取的,这个文件中的配置内容一般为:

整合JSP

 

Spring Boot Startups

Multiple MessageSources for environments

本地开发环境使用 org.springframework.context.support.ReloadableResourceBundleMessageSource, 动态加载资源。

@Configuration
	@Profile("development")
	public class LocalMessageSourceConfiguration {
		
		@Bean
		public ReloadableResourceBundleMessageSource messageSource() {
			ReloadableResourceBundleMessageSource source = new ReloadableResourceBundleMessageSource();
			source.setBasename("classpath:/i18n/messages");
			source.setCacheSeconds(0); 
			source.setDefaultEncoding("UTF-8");
			return source;
		} 
	}

其它发布环境,使用ResourceBundleMessageSource静态加载.

Subscribe to RSS - Spring Boot