在JBoss AS 5中,我在*-ds.xml中定义了一个数据源,但是将用户名/加密密码放在*-jboss-beans.xml中.
现在在JBoss AS 7.1中,数据源在standalone.xml或domain.xml中定义.我在哪里将加密密码放在AS 7.1中?
换句话说,如何在AS 7中加密和保护明确的密码?
我想支持如下所示的属性文件格式(允许用引号将值括起来):
key1=value1
key2="value2"
key3='value'
Run Code Online (Sandbox Code Playgroud)
我的问题是 Java Properties 类实现是否像上面那样处理双引号/单引号值?我的意思是自动删除引号。
其实我试过不是,只是想在这里确认一下。所以我必须自己删除引号。
编辑:
对于我的简单案例,我在下面有一个代码:
String path = "/tmp/my.properties";
Properties p = new Properties();
p.load(new FileInputStream(new File(path)));
String v = p.getProperty("key2");
if((v.startsWith("\"") && v.endsWith("\"")) ||
(v.startsWith("\'") && v.endsWith("\'"))) {
v = v.substring(1, v.length()-1);
}
Run Code Online (Sandbox Code Playgroud)
有关处理此问题的最佳实践的任何建议?
谢谢
我进行了面试测试并看到以下代码:
编辑:
public class TestValue {
private Value<SomeValue> defaultValue;
@Test
public void Empty_Value_Has_No_Value() {
Assert.assertFalse(Value.<SomeValue> createEmptyValue()
.hasValue());
}
@Test
public void Default_Value_IsEmpty() {
Assert.assertEquals(Value.<SomeValue> createEmptyValue(),
defaultValue);
}
@Test
public void Non_Empty_Value_Has_Value() {
Assert.assertTrue(new Value<SomeValue>(true, new SomeValue())
.hasValue());
}
}
Run Code Online (Sandbox Code Playgroud)
我从来没有见过Java泛型
Value.<SomeValue>
Run Code Online (Sandbox Code Playgroud)
测试是使用上面给定的单元测试代码实现Value类.
我试图找出下面的Value方法签名(需要实现):
public interface Value<T> {
public boolean hasValue();
public Value<T> createEmptyValue();
}
Run Code Online (Sandbox Code Playgroud)
有谁知道,请帮帮忙?
谢谢
编辑:根据@marlon下面的答案应该是这样的
public class Value<T> {
public boolean hasValue(){}
public static <M> Value<M> createEmptyValue(){}; //need <M>
}
Run Code Online (Sandbox Code Playgroud)
要知道的关键语法:
Value.<SomeValue> //ClassName.<Type>method
Run Code Online (Sandbox Code Playgroud)
是使用参数化参数调用类的静态方法的方法.
编辑:根据@ snipes83,语法调用带参数化参数的类的非静态方法.
SomeObject.<Type>method
Run Code Online (Sandbox Code Playgroud) 在JBoss 7.1中,默认的部署目录是独立/部署.
我想将此默认值更改为外部目录.我知道在JBoss 5中,我可以在profile-repository.xml中指定它.
如何在JBoss 7.1中执行此操作?
谢谢
以下正则表达式在java上下文中意味着什么?
[a-zA-Z\\s][a-zA-Z0-9\\s]+$
Run Code Online (Sandbox Code Playgroud)
它应该允许空格(\t\n
...)?但似乎只有非空格字符串通过.
谢谢
java ×4
jboss7.x ×2
deployment ×1
generics ×1
jboss ×1
properties ×1
quotes ×1
regex ×1
security ×1