二、Spring Boot配置详解

springboot配置详解

入口类和@SpringBootApplication

示例代码如下

package com.crazyang;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author crazyang
 * @Desciption:
 * @Date 2018-6-6 9:53
 */
@SpringBootApplication
public class FirstDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(FirstDemoApplication.class, args);
    }
}

Spring Boot 通常有一个名为*Application的入口类,入口类里有一个main方法,这个main方法就是一个标准的Java应用的入口方法。在main方法中使用 SpringApplication.run(FirstDemoApplication.class, args),启动Spring Boot应用项目。
@SpringBootApplication是Spring Boot的核心注解,它是一个组合注解,源码如下:

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan(
    excludeFilters = {        @Filter(
            type = FilterType.CUSTOM,
            classes = {TypeExcludeFilter.class}
        ),         @Filter(
            type = FilterType.CUSTOM,
            classes = {AutoConfigurationExcludeFilter.class}
        )}
)
public @interface SpringBootApplication {
    @AliasFor(
        annotation = EnableAutoConfiguration.class
    )
    Class<?>[] exclude() default {};

    @AliasFor(
        annotation = EnableAutoConfiguration.class
    )
    String[] excludeName() default {};

    @AliasFor(
        annotation = ComponentScan.class,
        attribute = "basePackages"
    )
    String[] scanBasePackages() default {};

    @AliasFor(
        annotation = ComponentScan.class,
        attribute = "basePackageClasses"
    )
    Class<?>[] scanBasePackageClasses() default {};
}

@SpringBootApplication注解主要结合了@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan;如果不实用@SpringBootApplication,则可以使用其他三个注解代替。

定制Banner

在Spring Boot启动的时候会有一个默认启动图案,如下图所示:
图片
我们在src/main/resources下新建一个banner.txt.
通过网站http://patorjk.com/software/taag网站生成字符,如敲入的为crazyang,将网站生成的字符赋值到banner.txt中,然后再启动项目即可,如下图所示:

这里写图片描述
关闭banner
banner可以关闭,具体请自行查看资料。

常规属性配置

Spring Boot启动时会默认读取application.properties配置文件,并会自动在项目中相应位置为配置信息赋值。
实例:
在application.properties中添加如下代码

book.author=crazyang
book.name=spring boot

主程序代码:

package com.crazyang;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author crazyang
 * @Desciption:
 * @Date 2018-6-6 9:53
 */
@RestController
@SpringBootApplication
public class FirstDemoApplication {

    @Value("${book.author}")
    private String bookAuthor;
    @Value("${book.name}")
    private String bookName;

    @RequestMapping("/")
    String index(){
        return "book name is :"+bookName+" and book author is:" + bookAuthor;
    }

    public static void main(String[] args) {
        SpringApplication.run(FirstDemoApplication.class, args);
    }
}

运行,访问http://localhost:8080/,效果如下图所示:
图片

猜你喜欢

转载自blog.csdn.net/java_mdzy/article/details/80593710
今日推荐