小编Cos*_*atu的帖子

将元素添加到Array中

我试图动态地将一个元素添加到数组中:

   array=("element1" "element2" "element3")
   fa=()
   # now loop through the above array
   for i in "${array[@]}"
   do
      fa+=("$i")
      # or do whatever with individual element of the array
   done

   echo $fa
Run Code Online (Sandbox Code Playgroud)

但它正在回归element1.

我试过一个索引,但我得到了相同的结果:

fa[index]="$i"
((index++))
Run Code Online (Sandbox Code Playgroud)

我在这里做错了吗?

bash shell

11
推荐指数
1
解决办法
1万
查看次数

是否有任何真正的替代GeoServer作为Java中的动态地图生成器?

我正在寻找最适合用Java生成动态地理地图的工具(基于自定义业务数据的样式:颜色,标签等将动态设置).经过一些搜索,只有GeoServer(以及底层的GeoTools库)似乎适合.

虽然我对这个解决方案非常满意,但我担心我可能会错过一些东西并根据不完整的输入作出决定.有什么建议吗?有什么比较可行的可行方案吗?

java geoserver

8
推荐指数
1
解决办法
5116
查看次数

使用ansible处理程序滚动重启

我想运行一个安装服务的ansible playbook,如果自上次运行以来发生了任何变化(或多或少是ansible处理程序的规范用例),则重新启动它.

但是我想要一个不同的并行安装而不是重新启动:我想一次安装在所有主机上但是,如果调用"service-restart"处理程序,我希望一次在X主机上运行.

我知道这对于具有不同serial值的不同游戏是可能的.但是,如果我走这条路,我无法看到如何利用处理程序.我不能拥有一个serial像这样的价值的单一剧本2,因为大多数时候该服务没有任何改变.

处理程序可以跨多个游戏吗?或者有没有其他方法可以做到这一点没有黑客?

ansible ansible-playbook

8
推荐指数
2
解决办法
6178
查看次数

@JsonProperty 未按预期工作

当我使用 Spring RestTemplate 使用宁静的 Web 服务时,出现以下异常

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "IMP-SourceTxnId" (class com.model.ResponseBaseParameters) not marked as ignorable (4 known properties: , "sourceTxnId", "incommTxnId", "responseCode", "responseText"])

at [Source: sun.net.www.protocol.http.HttpURLConnection$HttpInputStream@2f2ddd7c; line: 1, column: 130] (through reference chain: com.incomm.ife.model.rogers.RogersTransactionResponse["responseBaseParameters"]->com.incomm.ife.model.rogers.ResponseBaseParameters["IMP-SourceTxnId"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:79)
at com.fasterxml.jackson.databind.DeserializationContext.reportUnknownProperty(DeserializationContext.java:555)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:708)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1159)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:315)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:121)
at com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:449)
at com.fasterxml.jackson.databind.deser.impl.MethodProperty.deserializeAndSet(MethodProperty.java:98)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:295)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:121)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:2888)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2094)
at org.springframework.http.converter.json.MappingJackson2HttpMessageConverter.readInternal(MappingJackson2HttpMessageConverter.java:123)
... 54 more
Run Code Online (Sandbox Code Playgroud)

响应参数为

{

  "responseBaseParameters":  

{

  "responseCode": "32",

  "responseText": "Invalid Request",

  "incommTxnId": null,

  "IMP-SourceTxnId": "551932ba-6af4-44f9-ab98-db5bc96e962b"

 }

}
Run Code Online (Sandbox Code Playgroud)

我的 …

java rest spring jackson

6
推荐指数
1
解决办法
3万
查看次数

具有私有构造函数的Singleton类的Spring(创建bean,没有可见构造函数时出错)

我有4个带有私有构造函数的单例类,我正在尝试为所有4个类创建bean属性.

主要问题是,我能够为3个类创建bean,这3个类与getInstance方法和私有构造函数()(Singleton类)具有相似的结构,但第四个和最后一个抛出异常(Exception)消息粘贴在下面)

请在下面找到getInstance方法,私有构造函数和bean id声明.所有四个bean声明都是一样的

但是如果我将构造函数从"Private"更改为"Public",那么我就不会得到错误.任何人都可以对正在发生的事情发表任何看法吗?由于其他三个类都有私有构造函数,因此它们工作得很好

getInstance()方法

public static ApplicationConfiguration getInstance() throws IOException,
            IllegalArgumentException, InconsistentDataException {
        ApplicationConfiguration result = instance.get();
        if (result == null) {
            try {
                // Check again if already created
                result = instance.get();
                if (result == null) {
                    result = new ApplicationConfiguration();

                }
            } finally {
                // something here
            }
        } 
        return result;
    }
Run Code Online (Sandbox Code Playgroud)

私有构造函数

private ApplicationConfiguration() throws Exception {
        // call a method here
    }
Run Code Online (Sandbox Code Playgroud)

bean属性声明

<bean id="configManager" class="com.manager.ApplicationConfiguration" factory-method="getInstance" />

<bean id="configEnricher" class="com.enricher.ApplicationConfiguration" factory-method="getInstance" />

<bean …
Run Code Online (Sandbox Code Playgroud)

java spring apache-camel

3
推荐指数
1
解决办法
6752
查看次数

Bash:是否可以阻止PID被重用?

是否可以阻止PID被重用?

例如,如果我myjob在后台运行一个作业myjob &,并使用PID PID=$!,是否可以阻止linux系统重新使用该PID,直到我检查PID不再存在(该过程已完成)?

换句话说,我想做的事情如下:

myjob &
PID=$!
do_not_use_this_pid $PID
wait $PID
allow_use_of_this_pid $PID
Run Code Online (Sandbox Code Playgroud)

想要这样做的原因在上面给出的示例中没有多大意义,但是考虑在系列中启动多个后台作业,然后等待它们全部完成.

一些程序员老兄正确地指出,没有2个进程可以共享相同的PID.这是正确的,但不是我在这里要求的.我要求一种方法,以防止在使用特定PID启动进程后重新使用PID.然后还有一种方法,在我完成使用它来检查我的原始过程是否完成之后再重新启用它.

既然已经被要求,这是一个用例:

  • 启动多个后台工作
  • 得到PID的后台工作
  • 在后台作业终止后,防止PID被另一个进程重用
  • 检查PID的"后台作业" - 即确保后台作业完成
  • [请注意,如果禁用PID重新使用后台作业的PID,则后台进程终止后启动的新进程无法使用这些PID]*
  • 重新启用后台作业的PID
  • 重复

*进一步说明:

  • 假设启动了10个工作岗位
  • 工作5退出
  • 新进程由另一个用户启动,例如,他们登录到tty
  • 新进程与作业5具有相同的PID!
  • 现在我们的脚本检查作业5终止,但看到tty使用PID!

linux bash pid

3
推荐指数
2
解决办法
401
查看次数

从Kafka主题读取处理数据并使用scala和spark写回Kafka主题

嗨,我正在阅读 kafka 主题,我想处理从 kafka 收到的数据,例如标记化、过滤掉不必要的数据、删除停用词,最后我想写回另一个 Kafka 主题

// read from kafka
val readStream = existingSparkSession
      .readStream
      .format("kafka")
      .option("kafka.bootstrap.servers", hostAddress)
      .option("subscribe", "my.raw") // Always read from offset 0, for dev/testing purpose
      .load()

val df = readStream.selectExpr("CAST(value AS STRING)" )
df.show(false)
val df_json = df.select(from_json(col("value"), mySchema.defineSchema()).alias("parsed_value"))
val df_text = df_json.withColumn("text", col("parsed_value.payload.Text"))

// perform some data processing actions such as tokenization etc and return cleanedDataframe as the final result

// write back to kafka
val writeStream = cleanedDataframe
      .writeStream
      .outputMode("append")
      .format("kafka")
      .option("kafka.bootstrap.servers", hostAddress) …
Run Code Online (Sandbox Code Playgroud)

scala apache-kafka apache-spark spark-structured-streaming

3
推荐指数
1
解决办法
100
查看次数