我想使用不区分大小写的字符串作为HashMap键,原因如下.
<key, value>从HashMap中找到忽略我从流量中收到的情况.我遵循了这种方法
CaseInsensitiveString.java
public final class CaseInsensitiveString {
private String s;
public CaseInsensitiveString(String s) {
if (s == null)
throw new NullPointerException();
this.s = s;
}
public boolean equals(Object o) {
return o instanceof CaseInsensitiveString &&
((CaseInsensitiveString)o).s.equalsIgnoreCase(s);
}
private volatile int hashCode = 0;
public int hashCode() {
if (hashCode == 0)
hashCode = s.toUpperCase().hashCode();
return hashCode;
}
public String toString() {
return s;
}
}
Run Code Online (Sandbox Code Playgroud)
LookupCode.java
node = nodeMap.get(new CaseInsensitiveString(stringFromEvent.toString()));
Run Code Online (Sandbox Code Playgroud)
因此,我正在为每个事件创建一个CaseInsensitiveString的新对象.因此,它可能会影响性能.
有没有其他方法可以解决这个问题?
我在Oracle db中有一个TIMESTAMP(6)字段.该字段的值以格式显示
DD/MM/YYYY HH:MM:SS.000000000 PM
Run Code Online (Sandbox Code Playgroud)
如何将此值更新为当前时间戳?
[类似问题的链接:] 更新oracle中的日期值
我按照这个链接,但以下查询需要很长时间才能执行.
update table_name set start_time = to_char(to_date(start_time, 'yyyy/mm/dd-hh:mi:ss:ff3'), '2012/10/10-19:30:00:00') where column='Q'
Run Code Online (Sandbox Code Playgroud) 我在 IntelliJ 上使用 spring 依赖管理 gradle 插件。我有一个根模块如下
apply plugin: "io.spring.dependency-management"
dependencyManagement {
dependencies {
dependencySet(group: "org.apache.hadoop", version: "2.6.0-cdh5.14.4") {
entry "hadoop-common"
entry "hadoop-hdfs"
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果我添加
dependency 'org.apache.hadoop:hadoop-tools:2.6.0-mr1-cdh5.14.4'
Run Code Online (Sandbox Code Playgroud)
或者
dependencySet(group: "org.apache.hadoop", version: "2.6.0-mr1-cdh5.14.4") {
entry ("hadoop-tools") {
exclude group: 'ch.qos.logback', module: 'logback-classic'
exclude group: 'org.slf4j', module: 'slf4j-log4j12'
}
}
Run Code Online (Sandbox Code Playgroud)
在根模块中,它不会下载hadoop-toolsjar。仅当我在子模块中添加以下内容时,它才会下载此依赖项。
plugins {
id "com.github.johnrengelman.shadow" version "2.0.4"
}
dependencies {
compile ("org.apache.hadoop:hadoop-tools:2.6.0-mr1-cdh5.14.4") {
exclude group: 'ch.qos.logback', module: 'logback-classic'
exclude group: 'org.slf4j', module: 'slf4j-log4j12'
}
}
Run Code Online (Sandbox Code Playgroud)
行为为何?
spring dependencies intellij-idea dependency-management gradle
当我使用左连接连接两个数据帧时,如下所示:
df1.join(broadcast(df2), $"id" === $"id1" || $"id2" === $"id3", "left")
如果没有$"id2" === $"id3",它执行得非常快,但是当这两个条件都存在时,它会BroadcastNestedLoopJoin变得非常非常慢。
我有什么想法可以改进这个吗?
apache-spark ×1
dependencies ×1
dictionary ×1
gradle ×1
java ×1
join ×1
oracle ×1
spring ×1
sql ×1
sql-update ×1
timestamp ×1