application.properties和application.yml进行配置
application.yml -- 比较方便和直观,不用写全
server: port: 8080 context-path: /sboot
application.properties -- 不太直观,比较老的配置文件会使用这个
server.port = 8080 server.context-path= /sboot
常用注解
@Value : 获取properties\yml文件中的配置值,简化了读取配置文件的代码。 使用实例: @Value("${age}")
@Controller:不推荐使用,处理http请求
@RestController : 推荐使用这个注解,是@ResponseBody和@Controller的组合注解。
@RequestMapping(value = "/hello", method = RequestMethod.GET): 配置uri映射,此注解即可以作用在控制器的某个方法上,也可以作用在此控制器类上
当控制器在类级别上添加@RequestMapping注解时,这个注解会应用到控制器的所有处理器方法上。处理器方法上的@RequestMapping注解会对类级别上的 @RequestMapping的声明进行补充。
@SpringBootApplication:
@Autowired:
@Target({ElementType.CONSTRUCTOR, ElementType.FIELD, ElementType.METHOD, ElementType.ANNOTATION_TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface Autowired { boolean required() default true; }
可以得出@Autowired注解只有一个属性即required属性,此属性的默认值为true,即默认情况下它要求依赖对象必须存在,如果不存在会出现空指针等错误;如果允许为null,可以设置它required属性为false
使用场景: (1)构造函数 (2)成员变量 (3)Setter方法 (4)普通方法
@Component 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。 一般对bean进行注解
@ConfigurationProperties(prefix = "girl") prefix="配置名" ,配置文件的信息,读取并自动封装成实体类
Spring Boot 多环境配置
(1)根据application.properties和application.yml进行配置
(2)创建多个配置文件 在 application-后加入环境区分字母,比如dev,prod,test等
(3)在application.properties或application.yml配置参数: spring.profiles.active ,并设置它的值为环境区分字母
备注:使用SpringBoot的第一种启动方式只能选择一种配置文件,使用第三种启动方式,在后面加入参数:spring.profiles.active="",可以设置每个端口为一个配置文件