若依 3.0
This commit is contained in:
164
ruoyi-common/src/main/java/com/ruoyi/common/config/Global.java
Normal file
164
ruoyi-common/src/main/java/com/ruoyi/common/config/Global.java
Normal file
@ -0,0 +1,164 @@
|
||||
package com.ruoyi.common.config;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.common.utils.YamlUtil;
|
||||
|
||||
/**
|
||||
* 全局配置类
|
||||
*
|
||||
* @author ruoyi
|
||||
*/
|
||||
public class Global
|
||||
{
|
||||
private static final Logger log = LoggerFactory.getLogger(Global.class);
|
||||
|
||||
private static String NAME = "application.yml";
|
||||
|
||||
/**
|
||||
* 当前对象实例
|
||||
*/
|
||||
private static Global global = null;
|
||||
|
||||
/**
|
||||
* 保存全局属性值
|
||||
*/
|
||||
private static Map<String, String> map = new HashMap<String, String>();
|
||||
|
||||
private Global()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* 静态工厂方法 获取当前对象实例 多线程安全单例模式(使用双重同步锁)
|
||||
*/
|
||||
|
||||
public static synchronized Global getInstance()
|
||||
{
|
||||
if (global == null)
|
||||
{
|
||||
synchronized (Global.class)
|
||||
{
|
||||
if (global == null)
|
||||
global = new Global();
|
||||
}
|
||||
}
|
||||
return global;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取配置
|
||||
*/
|
||||
public static String getConfig(String key)
|
||||
{
|
||||
String value = map.get(key);
|
||||
if (value == null)
|
||||
{
|
||||
Map<?, ?> yamlMap = null;
|
||||
try
|
||||
{
|
||||
yamlMap = YamlUtil.loadYaml(NAME);
|
||||
value = String.valueOf(YamlUtil.getProperty(yamlMap, key));
|
||||
map.put(key, value != null ? value : StringUtils.EMPTY);
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
log.error("获取全局配置异常 {}", key);
|
||||
}
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目名称
|
||||
*/
|
||||
public static String getName()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("ruoyi.name"), "RuoYi");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取项目版本
|
||||
*/
|
||||
public static String getVersion()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("ruoyi.version"), "3.0.0");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取版权年份
|
||||
*/
|
||||
public static String getCopyrightYear()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("ruoyi.copyrightYear"), "2018");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取ip地址开关
|
||||
*/
|
||||
public static Boolean isAddressEnabled()
|
||||
{
|
||||
String value = getConfig("ruoyi.addressEnabled");
|
||||
return Boolean.TRUE.equals(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取文件上传路径
|
||||
*/
|
||||
public static String getProfile()
|
||||
{
|
||||
return getConfig("ruoyi.profile");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取头像上传路径
|
||||
*/
|
||||
public static String getAvatarPath()
|
||||
{
|
||||
return getConfig("ruoyi.profile") + "avatar/";
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下载上传路径
|
||||
*/
|
||||
public static String getDownloadPath()
|
||||
{
|
||||
return getConfig("ruoyi.profile") + "download/";
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取作者
|
||||
*/
|
||||
public static String getAuthor()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("gen.author"), "ruoyi");
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成包路径
|
||||
*/
|
||||
public static String getPackageName()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("gen.packageName"), "com.ruoyi.project.module");
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否自动去除表前缀
|
||||
*/
|
||||
public static String getAutoRemovePre()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("gen.autoRemovePre"), "true");
|
||||
}
|
||||
|
||||
/**
|
||||
* 表前缀(类名不会包含表前缀)
|
||||
*/
|
||||
public static String getTablePrefix()
|
||||
{
|
||||
return StringUtils.nvl(getConfig("gen.tablePrefix"), "sys_");
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user