java jeesite.properties配置文件属性提取
package com.thinkgem.jeesite.common.config; import java.io.UnsupportedEncodingException;
import java.util.Map; import org.apache.commons.lang3.StringUtils;
import org.springframework.util.Assert; import com.google.common.collect.Maps;
import com.thinkgem.jeesite.common.utils.PropertiesLoader; /**
* 全局配置类
* @author ThinkGem
* @version 2013-03-23
*/
public class Global { /**
* 保存全局属性值
*/
private static Map<String, String> map = Maps.newHashMap(); /**
* 属性文件加载对象
*/
private static PropertiesLoader propertiesLoader = new PropertiesLoader("jeesite.properties"); /**
* 获取配置
*/
public static String getConfig(String key) {
return getConfig(key, null);
}
/**
* 获取配置
*/
public static String getConfig(String key, String defaultVal) {
String value = map.get(key);
if (value == null){
value = propertiesLoader.getProperty(key);
map.put(key, value);
}
if(StringUtils.isBlank(value)
&& StringUtils.isNotBlank(defaultVal) ){
return defaultVal;
}
return value;
} ///////////////////////////////////////////////////////// public static String getDataDownDbUser() {
return Global.getConfig("dataDownDbUser","NX_DOWN_DATA") ;
} /**
* 获取管理端根路径
*/
public static String getAdminPath() {
return getConfig("adminPath");
} /**
* 获取前端根路径
*/
public static String getFrontPath() {
return getConfig("frontPath");
} /**
* 获取URL后缀
*/
public static String getUrlSuffix() {
return getConfig("urlSuffix");
} /**
* 是否是演示模式,演示模式下不能修改用户、角色、密码、菜单、授权
*/
public static Boolean isDemoMode() {
String dm = getConfig("demoMode");
return "true".equals(dm) || "1".equals(dm);
} /**
* 获取CKFinder上传文件的根目录
* @return
*/
public static String getCkBaseDir() {
String dir = getConfig("userfiles.basedir");
Assert.hasText(dir, "配置文件里没有配置userfiles.basedir属性");
if(!dir.endsWith("/")) {
dir += "/";
}
return dir;
} }
简单的打包:
package com.thinkgem.jeesite.common.config; import java.io.UnsupportedEncodingException;
import java.util.Map; import org.apache.commons.lang3.StringUtils;
import org.springframework.util.Assert; import com.google.common.collect.Maps;
import com.thinkgem.jeesite.common.utils.PropertiesLoader; public class Global { /**
* 保存全局属性值
*/
private static Map<String, String> map = Maps.newHashMap(); /**
* 属性文件加载对象
*/
private static PropertiesLoader propertiesLoader = new PropertiesLoader("jeesite.properties"); /**
* 获取配置
*/
public static String getConfig(String key) {
return getConfig(key, null);
}
/**
* 获取配置
*/
public static String getConfig(String key, String defaultVal) {
String value = map.get(key);
if (value == null){
value = propertiesLoader.getProperty(key);
map.put(key, value);
}
if(StringUtils.isBlank(value)
&& StringUtils.isNotBlank(defaultVal) ){
return defaultVal;
}
return value;
} ///////////////////////////////////////////////////////// public static String getDataDownDbUser() {
return Global.getConfig("dataDownDbUser","NX_DOWN_DATA") ;
} /**
* 获取管理端根路径
*/
public static String getAdminPath() {
return getConfig("adminPath");
} /**
* 获取前端根路径
*/
public static String getFrontPath() {
return getConfig("frontPath");
} /**
* 获取URL后缀
*/
public static String getUrlSuffix() {
return getConfig("urlSuffix");
} /**
* 是否是演示模式,演示模式下不能修改用户、角色、密码、菜单、授权
*/
public static Boolean isDemoMode() {
String dm = getConfig("demoMode");
return "true".equals(dm) || "1".equals(dm);
} /**
* 获取CKFinder上传文件的根目录
* @return
*/
public static String getCkBaseDir() {
String dir = getConfig("userfiles.basedir");
Assert.hasText(dir, "配置文件里没有配置userfiles.basedir属性");
if(!dir.endsWith("/")) {
dir += "/";
}
return dir;
} }
调用示例:
Global.getDataDownDbUser();
java jeesite.properties配置文件属性提取的更多相关文章
- java 读写properties (配置)文件
Properties属性文件在Java应用程序中是经常可以看得见的,也是特别重要的一类文件.它用来配置应用程序的一些信息,不过这些信息一般都是比较少的数据,没有必要使用数据库文件来保存,而使用一般的文 ...
- 获取.properties配置文件属性值
public class TestProperties { /** * * @Title: printAllProperty * @Description: 输出所有配置信息 * @param pro ...
- java Properties 配置信息类
Properties(配置信息类):主要用于生产配置文件和读取配置文件信息. ----> 是一个集合类 继承HashTable 存值是以键-值的方式. package com.beiwo.io; ...
- java读取properties文件的配置信息
项目开发中,我们一般来向 application.properties 文件中放一些全局配置变量,以便程序中读取使用,本篇内容来演示从properties配置文件中读取键值. 当然,我们不一定写入 a ...
- JAVA加载Properties配置资源文件
JAVA加载Properties配置资源文件 制作人:全心全意 配置文件(资源文件):以properties作为拓展名的文件 Java代码是如何加载properties文件的? 必须使用Propert ...
- java读取配置文件属性
在项目开发过程中,有时需要将其中用到的变量值在一个文件中统一管理,首先我选到了config.properties文件:下面这个代码是用于读取其中的变量值的类: package com.modem.te ...
- springBoot基础系列--properties配置
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/7183408.html SpringBoot中免除了大部分手动配置,但是对于一些特定的情况, ...
- SpringBoot基础学习(二) SpringBoot全局配置文件及配置文件属性值注入
全局配置文件 全局配置文件能够对一些默认配置值进行修改.SpringBoot 使用一个名为 application.properties 或者 application.yaml的文件作为全局配置文件, ...
- Android中使用java.util.Properties犯的错
今天尝试使用java.util.Properties来保存应用配置,然而遇到了好几个问题,对于熟悉此内容的来说可能都是猪一样的错误,但难免有像我一样的新手再次遇到,希望此文能有所帮助. 错误1 jav ...
随机推荐
- DHCP(五)
DHCP重新登录 在经过发现,提供,选择以及应答阶段后,DHCP客户端每次重新登录网络时,就不需要再发送DHCP DISCOVER发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP REQU ...
- (转)c#实现开机自启动
RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersio ...
- Java-Runoob-高级教程:Java MySQL 连接
ylbtech-Java-Runoob-高级教程:Java MySQL 连接 1.返回顶部 1. Java MySQL 连接 本章节我们为大家介绍 Java 如何使用 使用 JDBC 连接 MySQL ...
- 1009 Product of Polynomials
题意:模拟多项式相乘 思路:略.有一个注意点,题目中说指数最大为1000,当两个多项式相乘后,指数最大就为2000,这一点不注意会出现段错误. 代码: #include <cstdio> ...
- VS2017自动添加头部注释
让VS自动生成类的头部注释,只需修改两个文集即可,一下两个路径下个有一个 Class.cs文件 D:\Program Files (x86)\Microsoft Visual Studio\2017\ ...
- 1 响应式页面-@media介绍,
我们为什么要写自适应的页面(响应式页面) 众所周知,电脑.平板.手机的屏幕是差距很大的,假如在电脑上写好了一个页面,在电脑上看起来不错,但是如果放到手机上的话,那可能就会乱的一塌糊涂,这时候怎么解决呢 ...
- Ubantu下安装adobe flash player插件
用火狐看视频,要打开Adobe官网下载xxxx,太麻烦. 可以在Terminal下输入: apt-get install flashplugin-nonfree 好了.
- 委托小结及Func用法
首先,委托是一种类型,由关键字delegate声明.确切的说,委托是一种可用于封装命名或者匿名方法的引用类型. 它类似于 C++ 中的函数指针,而且是类型安全和可靠的. 委托类型的声明与 ...
- Java微信公众平台开发(十四)【番外篇】--微信web开发者工具使用
转自:http://www.cuiyongzhi.com/post/58.html 为帮助开发者更方便.更安全地开发和调试基于微信的网页,微信推出了 web 开发者工具.它是一个桌面应用,通过模拟微信 ...
- easylogging++学习记录(二):流式日志
easylogging++日志库流式日志的写入,依赖于el::base::Writer类的析构,以debug日志为例:具体代码如下: #define LOG(LEVEL) CLOG(LEVEL, EL ...