最直接的办法是,使用AppContext.getProperty("cuba.trustedClientPassword");

  可以获取到系统中的web模块下的wep-app.properties和 core模块下的app.properties文件中的配置信息(core是业务,web是UI),但是不推荐这么使用。

  推荐使用Config代替AppContext

  在web模块中使用WebAuthConfig
  @Inject
  private WebAuthConfig webAuthConfig;

  获取:

  webAuthConfig.getTrustedClientPassword();

  在core模块中使用ServerConfig
  @Inject
  private ServerConfig serverConfig;

  获取:

  serverConfig.getTrustedClientPassword();

  这两个类有同样的这个方法

@Source(type = SourceType.APP)
public interface WebAuthConfig extends Config {
@Property("cuba.trustedClientPassword")
@DefaultString("")
String getTrustedClientPassword();
} @Source(type = SourceType.APP)
public interface ServerConfig extends Config {
@Property("cuba.trustedClientPassword")
@DefaultString("")
String getTrustedClientPassword();
}

  而cuba.trustedClientPassword = **********,这个配置,是配置在web-app.properties里的。ServerConfig也是可以获取到的。

  注意:这种使用方法只能用在Bean中,而不能在普通的jaca类里,因为要使用到注解,而只有Bean才能被容器管理,才可以使用注解。

新建属性

  上面的两个属性,都是cuba系统自带的属性,那两个类也是写在jar文件中的。如果是自己新增的需要,需要自定义一个Config类,继承Config类就可以。

  如下:

//定义属性类类
@Source(type= SourceType.DATABASE)
public interface CAConfig extends Config {
@Property("ucenter.CA.pdf.sign.enable")
@DefaultBoolean(false)
Boolean getCAPDFSignEnable();
} //调用时
@Inject
private CAConfig caConfig; //获取
caConfig.getCAPDFSignEnable()

在运行时修改属性

  刚开始把属性获取到以后,直接放到了全局静态变量里了
    public static final String CUBA_TRUSTED_CLIENT_PASSWORD = AppContext.getProperty("cuba.trustedClientPassword");

  但是这样的坏处是:如果在项目运行时修改了属性,就必须重启系统才能生效,这明显是不好的。所以不应该使用上面的方法,而之前的办法在项目运行是进行修改,也会实时得获取到。

  那么怎么修改呢?

  使用【管理员】登陆,在【管理】-【应用程序属性】下可以搜索到:

  编辑:

Cuba获取属性文件中的配置的更多相关文章

  1. @value 注解获取属性文件中的值

    一.属性文件 db.properties name=jack 二.配置文件 applicationContext.xml <!-- 加载配置文件,该节点只能存在一个,所以用 * ,加载所有属性文 ...

  2. JDBC程序优化--提取配置信息放到属性文件中

    JDBC程序优化--提取配置信息放到属性文件中 此处仅仅优化JDBC连接部分,代码如下: public class ConnectionFactory { private static String ...

  3. Spring 获取propertise文件中的值

    Spring 获取propertise文件中的值 Spring 获取propertise的方式,除了之前的博文提到的使用@value的注解注入之外,还可以通过编码的方式获取,这里主要说的是要使用Emb ...

  4. XML序列化 判断是否是手机 字符操作普通帮助类 验证数据帮助类 IO帮助类 c# Lambda操作类封装 C# -- 使用反射(Reflect)获取dll文件中的类型并调用方法 C# -- 文件的压缩与解压(GZipStream)

    XML序列化   #region 序列化 /// <summary> /// XML序列化 /// </summary> /// <param name="ob ...

  5. 【MyBatis学习05】SqlMapConfig.xml文件中的配置总结

    经过上两篇博文的总结,对mybatis中的dao开发方法和流程基本掌握了,这一节主要来总结一下mybatis中的全局配置文件SqlMapConfig.xml在开发中的一些常用配置,首先看一下该全局配置 ...

  6. C#可以获取Excel文件中Sheet的名字

    C#可以获取Excel文件中Sheet的名字吗 C#可以获取Excel文件中Sheet的名字吗 我试过WPS的表格可以 可以 要代码么 百度都有 [深圳]Milen(99696619)  14:13: ...

  7. C# -- 使用反射(Reflect)获取dll文件中的类型并调用方法

    使用反射(Reflect)获取dll文件中的类型并调用方法 需引用:System.Reflection; 1. 使用反射(Reflect)获取dll文件中的类型并调用方法(入门案例) static v ...

  8. Java实现获取属性文件的参数值

    Java实现获取属性文件的参数值 1,属性文件内容(analysis.properties),路径必须在:src根目录下: #client data path analysis.client.data ...

  9. 通过反射获取class文件中的构造方法,运行构造方法

    /* * 通过反射获取class文件中的构造方法,运行构造方法 * 运行构造方法,创建对象 * 1.获取class文件对象 * 2.从class文件对象中,获取需要的成员 * * Constructo ...

随机推荐

  1. BP浅谈

    之前一直对BP的理解不透彻,这可不行,这个可是超经典的广泛应用在ML中的求偏导的方法.本博来自<神经网络与机器学习>P86页. 在用到bp的地方我们都是为了使用梯度下降法,并求出他的偏导数 ...

  2. OpenStack中的虚拟机(/dev/mapper/centos-root)进行磁盘扩容

    一.虚拟机上先扩展分区: 二.centos系统root登入,新建分区 2.1 [fdisk -l] 最大分区为/dev/sda2,说明新创建的分区将会是sda3(在后面的步骤会进行选择) 2.2 输入 ...

  3. FlashWindowEx实现窗口在任务栏闪烁/变化颜色

    原文:FlashWindowEx实现窗口在任务栏闪烁/变化颜色 效果类似QQ收到新的会话消息任务栏颜色变化 附2小段代码: [System.Runtime.InteropServices.DllImp ...

  4. CF 799B T-shirt buying

    一道超级水的练习STL的题目 题目大意:有\(n\)件T恤,每件T恤都分别有价格(每件衣服的价格不重复).前面的颜色.背部的颜色三种属性.接下来有\(m\)个人每个人都有一种喜欢的颜色,他们按先后顺序 ...

  5. CYJian的水题大赛

    实在没忍住就去打比赛了然后一耗就是一天 最后Rank19还是挺好的(要不是乐多赛不然炸飞),这是唯一一套在Luogu上号称水题大赛的而实际上真的是水题大赛的比赛 好了我们开始看题 T1 八百标兵奔北坡 ...

  6. R语言学习 第十篇:包

    包(Package)是实现特定功能的.预先写好的代码库(library),通俗地说,包是含有函数.数据等的功能模块.R拥有大量的软件包,许多包都是由某一领域的专家编写的,但并不是所有的包都有很高的质量 ...

  7. Quartz.Net分布式任务管理平台

           无关主题:一段时间没有更新文章了,与自己心里的坚持还是背驰,虽然这期间在公司做了统计分析,由于资源分配问题,自己或多或少的原因,确实拖得有点久了,自己这段时间也有点松懈,借口就不说那么多 ...

  8. Quartz_配置

    quartz_jobs.xml job 任务 其实就是1.x版本中的<job-detail>,这个节点是用来定义每个具体的任务的,多个任务请创建多个job节点即可 name(必填) 任务名 ...

  9. 这里已不再更新,访问新博客请移步 http://www.douruixin.com

    这里已不再更新,访问新博客请移步 http://www.douruixin.com

  10. Python-复习-习题-13

    复习 dict: dic = {'name':'alex'}增:dic['age'] = 21 存在就覆盖dic.setdefault() 存在什么也不做,没有就增加 删除:pop()按照key删除, ...