
org.hothub.module.common.configuration.PropertiesConfiguration Maven / Gradle / Ivy
The newest version!
package org.hothub.module.common.configuration;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.Map;
/**
* 参考:
*
* https://blog.csdn.net/xujian_2001/article/details/79027026
*/
@Component
@ConfigurationProperties(prefix = "properties")
public class PropertiesConfiguration {
//定时任务
private Schedule schedule;
//微服务
private Map microService;
//数据源
private Map datasource;
//凭证相关
private Map certificate;
//应用设置
private Map project;
//错误页相关
private Error error;
//配置相关
private Map config;
//SnowFlake 雪花ID节点
private SnowFlake snowflake;
public Schedule getSchedule() {
return schedule;
}
public void setSchedule(Schedule schedule) {
this.schedule = schedule;
}
public Map getMicroService() {
return microService;
}
public void setMicroService(Map microService) {
this.microService = microService;
}
public Map getDatasource() {
return datasource;
}
public void setDatasource(Map datasource) {
this.datasource = datasource;
}
public Map getCertificate() {
return certificate;
}
public void setCertificate(Map certificate) {
this.certificate = certificate;
}
public Map getProject() {
return project;
}
public void setProject(Map project) {
this.project = project;
}
public Error getError() {
return error;
}
public void setError(Error error) {
this.error = error;
}
public Map getConfig() {
return config;
}
public void setConfig(Map config) {
this.config = config;
}
//内部类
private static class Schedule {
private Map cron;
public Map getCron() {
return cron;
}
public void setCron(Map cron) {
this.cron = cron;
}
}
private static class MicroService {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
private static class Datasource {
private String name;
private String url;
private String username;
private String password;
private String type;
private String driverClassName;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getDriverClassName() {
return driverClassName;
}
public void setDriverClassName(String driverClassName) {
this.driverClassName = driverClassName;
}
}
private static class Certificate {
private Map element;
public Map getElement() {
return element;
}
public void setElement(Map element) {
this.element = element;
}
}
private static class Error {
private ErrorPageType pageType;
private String viewPath;
public ErrorPageType getPageType() {
return pageType;
}
public void setPageType(ErrorPageType pageType) {
this.pageType = pageType;
}
public String getViewPath() {
return viewPath;
}
public void setViewPath(String viewPath) {
this.viewPath = viewPath;
}
}
private static class SnowFlake {
private long machineId;
private long datacenterId;
public long getMachineId() {
return machineId;
}
public void setMachineId(long machineId) {
this.machineId = machineId;
}
public long getDatacenterId() {
return datacenterId;
}
public void setDatacenterId(long datacenterId) {
this.datacenterId = datacenterId;
}
}
public enum ErrorPageType {
JSON,
HTML;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy