Читает конфигурацию Prapplboot Profile из четырех способов (более мощный новый способ чтения)
1. Используйте значение ($ {}) аннотацию в аннотации компонентов
@Data
@Component
public class ApplicationProperty {
@Value("${application.name}")
private String name;
}
Этот метод может автоматически считывать значения конфигурации в текущем файле конфигурации application.yml или application.properties.
Отличие в том, что китайская кодировка поддерживается при чтении yml-файлов, а peoperties нужно перекодировать
2. Используйте аннотацию @ConfigurationProperties (префикс = «разработчик»).
@Data
@ConfigurationProperties(prefix = "developer")
@Component
public class DeveloperProperty {
private String name;
private String website;
private String qq;
private String phoneNumber;
}
Этот метод напрямую добавляет к загруженному в данный момент файлу конфигурации yml префикс атрибутов разработчика.
читать имя разработчика...
Введение зависимости в файле POM
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
3. Как использовать первые две чтения конфигурации
//使用方法
private final ApplicationProperty applicationProperty;
private final DeveloperProperty developerProperty;
@Autowired
public PropertyController(ApplicationProperty applicationProperty, DeveloperProperty developerProperty) {
this.applicationProperty = applicationProperty;
this.developerProperty = developerProperty;
}
@GetMapping("/property")
public Dict index() {
System.out.println("name:"+applicationProperty.getName());
System.out.println("version:"+applicationProperty.getVersion());
System.out.println("DevName:"+applicationProperty.getDeveloperName());
}
4. Используйте Hutool для чтения файла конфигурации (формат yml не поддерживается)
1. Читайте в стиле реквизита
static Props props1 = new Props("application.properties",CharsetUtil.CHARSET_UTF_8);
2. Используйте метод настройки, чтобы прочитать
static Setting setting = new Setting("application-dev.yml", CharsetUtil.CHARSET_UTF_8,true);
3. Прочтите файл конфигурации
public class Constant {
static Props props1 = new Props("application.properties",CharsetUtil.CHARSET_UTF_8);
static Setting setting = new Setting("application-dev.properties", CharsetUtil.CHARSET_UTF_8,true);
public static final String Name ;
public static final String SettingName ;
static {
Name = props.getStr("application.name");
SettingName = setting.getByGroup("name","application");
}
}
4. Как использовать
System.out.println(Constant.DevName+"------"+Constant.DevWebsite);
Вы можете использовать свойства этого класса напрямую, вызвав константный класс
5. Используйте аннотацию @PropertySource для чтения файла конфигурации (поддерживаются файлы конфигурации всех форматов).
@Configuration
@Component
@PropertySource(value = {"application.yml"})
@Data
public class ApplicationProperty_PropertySource {
@Value("${server.port}")
private String port;
@Value("${spring.profiles.active}")
private String active;
}
Непосредственно используйте аннотацию @PropertySource для чтения любого файла конфигурации в classPath или для чтения пути, отличного от classPath, который можно настроить. Использование такое же, как описано выше. Вы можете использовать зависимости в структуре Spring.