1、注解@Controller和@RestController的区别?
@Controller是当需要返回页面时使用,@RestController是当需要返回字符串或json对象时使用。
2、在属性配置文件中配置的属性包含中文时,可能会出现中文乱码,要调整idea的File Encoding,所有的都设置成UTF-8,勾选上转换ascii即可。
3、@ConfigurationProperties和@Value的使用区别?
@ConfiguratioinProperties适用于大部分情况,只是如果使用SpEL时需要用@Value;如果是简单的注入某个值时用@Value,
像注入Spring的配置文件多个值的情况时还是要使用@ConfigurationProperties。
4、@PropertySource和@ImportSource注解的使用?
@PropertySource是当需要注入非Spring属性配置文件时,在注解中引入某个配置文件的路径即可,例如:@PropertySource(value = {"classpath:person.properties"});
@ImportSource是当导入Spring配置文件xml时,想让Spring配置生效,@ImportSource标注在配置类上,例如:@ImportResource(locations = {"classpath:beans.xml"};
由于Springboot不推荐使用xml格式配置文件,所有用配置类+@Bean代替之前Spring配置文件,首先配置类上使用
@Configuration注解,在配置类中的方法上使用@Bean注解,方法的返回值放到Spring容器中,方法名为bean的id。