Bootstrap

spring boot知识点5

1.如何你有俩套配置环境,运行时如何选择

如果有俩套配置环境,则需要三个yml

application.yml 用于配置你用那个配置环境

application-dev.yml 用于开发配置环境

application-prod.yml 用于发布配置环境

spring:
  profiles:
    active: prod  # 指定当前激活的环境,可以是 dev 或 prod

这就是spring profiles的作用

2.@Component的注解有什么作用

类有了这个注解,项目会自动扫描并加入到执行

3.@Autowired

自动注入

@Component
public class MyController {

    private final MyService myService;

    @Autowired
    public MyController(MyService myService) {
        this.myService = myService;
    }

    public void execute() {
        myService.performTask();
    }
}

有了@Autowired之后,自动将MyService实例化的对象,放入构造器中

4.spring boot的文件夹说明

controller放控制器

entity放实体类

servie放服务类

util实用程序,处理具体的事务

5.javaconfig作用

a.读取application.properties里的配置

6.@Bean注解解释一下

spring boot的核心注解

@Bean注解用于方法级别,方法名不可重复,不同类的方法,同样不用重复

以下面的代码为例
ApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);
PersonalService myService = context.getBean(PersonalService.class);

JavaConfig里有bean注解的方法

7.在使用swagger的时候,有什么需要注意的地方

swagger2只支持spring boot2.x。

8.spring boot的核心组件

spring  boot starter(spring boot starter web,内置服务器)

自动配置

9.GC是什么意思

garbage collection 垃圾回收

10.解释一下这段命令

java -server -Xms512m -Xmx2g -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+HeapDumpOnOutOfMemoryError
a.java有俩种jvm模式,分别是client jvm,server jvm

-server达标server jvm

使用server模式启动java程序

最小堆512m

最大堆2g

启用G1垃圾回收器

回收暂停时间200ms

在内存溢出错误时生成堆转储文件,帮助调试内存问题

;