我有以下课程:
class Field<T> {
private final Class<T> type;
public Field(Class<T> type) {
this.type = type;
}
}
class Pick<V> {
private final V value;
private final Class<V> type;
public Pick(V value, Class<V> type) {
this.value = value;
this.type = type;
}
}
Run Code Online (Sandbox Code Playgroud)
和问题所涉及的类:
class PickField<T> extends Field<Pick<T>> {
public PickField(Class<Pick<T>> type) {
super(type);
}
}
Run Code Online (Sandbox Code Playgroud)
现在这似乎被编译器接受了.不幸的是,我不知道/理解如何创建一个新的实例PickField
,例如 String
选择.
这当然 - 不起作用:
new PickField<String>(Pick.class)
这是不允许的(我想我理解为什么):
new PickField<String>(Pick<String>.class)
那怎么办呢?或者整个方法是否以某种方式" 闻 "?
我目前正在尝试制作一个垂直时间轴(就像在stackoverflow开发人员的故事中一样).
要求如下:
因此,在第一步中,我只想测试如何相应地向左或向右对齐项目.
这就是我目前所拥有的:
.timeline {
width: 100%;
}
.timeline-item {
box-sizing: border-box;
width: 50%;
position: relative;
float: left;
clear: left;
padding-left: 20px;
margin: 1px 0 1px;
background: tomato;
}
.timeline-item.inverse {
float: right;
clear: right;
background: grey;
}
/* Just used to show the middle point alignment */
.timeline-item::after {
content: '';
height: 2px;
width: 10px;
background: DarkGrey;
position: absolute;
top: 50%;
right: 0;
}
.timeline-item.inverse::after {
left: 0;
background: …
Run Code Online (Sandbox Code Playgroud)我想序列化ZonedDateTime
到ISO 8601标准的字符串,如:
2018-02-14T01:01:02.074+0100
.
我尝试了以下方法:
@JsonProperty("@timestamp")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX")
private ZonedDateTime timestamp;
Run Code Online (Sandbox Code Playgroud)
但不幸的是,它没有给出正确的结果,并将ZonedDateTime
其所有字段等序列化.
谢谢你的帮助!
我想使用JSON序列化和反序列化MultiMap(Apache Commons 4).
要测试的代码片段:
MultiMap<String, String> map = new MultiValueMap<>();
map.put("Key 1", "Val 11");
map.put("Key 1", "Val 12");
map.put("Key 2", "Val 21");
map.put("Key 2", "Val 22");
ObjectMapper mapper = new ObjectMapper();
String jsonString = mapper.writeValueAsString(map);
MultiMap<String, String> deserializedMap = mapper.readValue(jsonString, MultiValueMap.class);
Run Code Online (Sandbox Code Playgroud)
序列化工作正常,并产生我期望的格式:
{"Key 1":["Val 11","Val 12"],"Key 2":["Val 21","Val 22"]}
Run Code Online (Sandbox Code Playgroud)
不幸的是,反序列化产生的结果不是它看起来的样子:在反序列化之后,Multimap在ArrayList中包含一个用于键值的ArrayList,而不是包含值的键的单个ArrayList.
由于put()
MultiMap实现了Map接口,因此调用多映射的方法来添加在json字符串中找到的数组,从而产生了这个结果.
如果将新值放入非现有键,MultiMap实现本身将再次创建一个ArrayList.
有没有办法绕过这个?
谢谢您的帮助!
问题
我有一个maven项目,其结构与下面的相似:(
为简化起见而简化)
--parent
|-- child A (inherits from parent)
|-- child B (inherits from parent)
|-- child B1 (inherits from B)
|-- child B2 (inherits from B)
|-- child B3 (inherits from B)
Run Code Online (Sandbox Code Playgroud)
仅仅孩子B1和B2必须使用包含一些额外构建内容的特定配置文件构建.结果,配置文件已在模块B中指定.
逻辑上,模块属于模块B,并且还继承了一些依赖项等(aggreagtion + inheritance).
(想象一下像B = Frontend,B1 = UI,B2 = Themes,B3 = Something)
题
编辑
编辑,因为问题被确定为重复:问题是相应问题中提到的解决方案不起作用.
如果我通过使用属性激活子配置文件,它也将被激活模块B(父级)和所有子级.
我只希望它对孩子B1和B2有效.
是否可以在Android上使用我自己的Firebase UI Auth 布局和按钮?
我基本上想要实现自己选择身份提供者(google,facebook等)的屏幕并从我的点击监听器开始相应的流程(例如使用Butterknife):
@OnClick(R.id.login_btn_signInGoogle)
public void signInGoogle(View view) {
// Start google sign in flow <--- This is what I do not know how to do it
}
@OnClick(R.id.login_btn_signInFacebook)
public void signInFacebook(View view) {
// Start facebook sign in flow <--- This is what I do not know how to do it
}
Run Code Online (Sandbox Code Playgroud)
我知道firebase提供了自定义屏幕/主题的可能性,但对我的情况来说还不够.
在最坏的情况下,我将不得不使用标准的firebase sdk方法来实现它.
我阅读了很多关于maven多模块项目的内容,并得出结论我想使用以下方法:
root
--pom.xml
--parent
--pom.xml
--module-a
--pom.xml
--module-b
--pom.xml
Run Code Online (Sandbox Code Playgroud)
看到这里
但是现在我在如何处理第二/第三/ n级模块方面有点挣扎,例如模块-a也有多个子模块,特别是对于具有大量模块的深层次结构.
我是否将模块a再次视为根,然后产生以下结构:
root
--pom.xml
--parent
--pom.xml
--module-a
--pom.xml
--parent-module-a
--pom.xml
--module-a-1
--pom.xml
--module-a-2
--pom.xml
--module-b
--pom.xml
Run Code Online (Sandbox Code Playgroud)
或者我会将模块的子模块放在根目录中:
root
--pom.xml
--parent
--pom.xml
--module-a
--pom.xml
--module-b
--pom.xml
--module-a-1
--pom.xml
--module-a-2
--pom.xml
Run Code Online (Sandbox Code Playgroud)
谢谢您的帮助!
我目前正在评估Spring Data REST,我非常喜欢它.
我缺少的是一个很好的交互式文档可能性,类似于Swagger UI.
我知道Spring Data REST不是静态API,而且有HAL Browser,但遗憾的是HAL Browser 没有显示任何关于相应url/GET/POST /等的文档元数据.
Spring Data REST生成ALPS元数据(参见此处).
为什么需要这个?
嗯,对于前端开发人员而言,从我的角度来看,这对于提高工作效率非常有用.此外,每种自动生成的文档都可以节省大量时间.
长话短说:
是否有类似" 用于ALPS /超媒体感知REST API的Swagger UI "?
附加信息:
我已经找到了一个描述问题的类似问题,但我不确定是否可以重新加载它,所以我创建了这个新问题.也许在此期间有可能的解决方案.
我需要将div(不是直接子节点)内的某个元素滚动到视图中.
基本上我需要与ScrollIntoView提供的功能相同,但是对于指定的父级(只有这个父级应该滚动).
此外,我无法使用任何第三方库.
我不太确定如何解决这个问题,因为我的JavaScript开发非常有限.有人可以帮助我吗?
我发现这个代码可以完全满足我的需要,但不幸的是它需要JQuery,我无法将其转换为纯JavaScript.
鉴于以下类(针对该问题进行了简化):
public static class Match {
private final String type;
private final int score;
public Match(String type, int score) {
this.type = type;
this.score = score;
}
public String getType() {
return type;
}
public int getScore() {
return score;
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个Stream<Match>
包含该类的多个实例,相同的类型出现多次,但具有不同的分数:
Stream.of(new Match("A", 1), new Match("A", 2), new Match("A", 4), new Match("A", 10),
new Match("B", 3), new Match("B", 6), new Match("B", 12),
new Match("C", 1));
Run Code Online (Sandbox Code Playgroud)
我现在想要收集流,以便结果List<Match>
只包含每种类型得分最高的实例.
以下代码正在运行,但我不确定它是否是"最佳"解决方案(除了可怕的读取和格式化):
.collect(Collectors.collectingAndThen(
Collectors.groupingBy(Match::getType, Collectors.collectingAndThen(
Collectors.toList(),
l …
Run Code Online (Sandbox Code Playgroud) java ×4
javascript ×2
maven ×2
multi-module ×2
android ×1
css ×1
datetime ×1
firebase ×1
firebaseui ×1
generics ×1
html ×1
inheritance ×1
jackson ×1
java-stream ×1
json ×1
multimap ×1
pom.xml ×1
rest ×1
scroll ×1
swagger ×1