我搜索了一段时间,以查找可以在各种Keycloak模板中使用的所有可用“变量”的文档。我所说的变量是指所有${xxx.yyy}我可以用来在模板中注入一些动态值的东西。
通过文档,我可以在其中找到一些(如${user.attributes}或${url.resourcesPath}),但还有其他东西吗?
有人有参考链接吗?
非常感谢
我正在慢慢学习Java 8的新功能,并试图找到一种以流方式处理类层次结构(从子级到父级)的方法。
例如,在类或其父级上找到注释。
在Java 8之前,我会这样完成:
public static <T extends Annotation> T getAnnonationOn(Class<?> type, Class<T> annType) {
Class<?> t = type;
T annot = null;
while (t != null && annot == null) {
annot = t.getAnnotation(annType);
t = t.getSuperclass();
}
return annot;
}
Run Code Online (Sandbox Code Playgroud)
现在,我希望以一种更加“功能性的编程”方式来做到这一点。我找不到比使用以下递归连接流更好的方法:
import java.lang.annotation.Annotation;
import java.util.stream.Stream;
public static <T extends Annotation> T getAnnonationOn(Class<?> type, Class<T> annType) {
return ClassIterator.streamSuperclass(type)
.map(t -> t.getAnnotation(annType))
.filter(a -> a != null)
.findFirst()
.orElse(null);
}
public static class ClassIterator {
public static Stream<Class<?>> …Run Code Online (Sandbox Code Playgroud)