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
在内存溢出错误时生成堆转储文件,帮助调试内存问题