任何人都可以让我知道在java中实时使用空Iterator是什么时候?我很想知道为什么需要它?像,
1. public static <T> Iterator<T> emptyIterator()
2. public static <T> ListIterator<T> emptyListIterator()
3. public static final <T> Set<T> emptySet(), etc..
Run Code Online (Sandbox Code Playgroud)
来源:http://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#emptyIterator()
我正在使用python2.x日志模块,比如
logging.basicConfig(format='%(asctime)s %(message)s',
datefmt='%m/%d/%Y %I:%M:%S %p',
filename='logs.log',
level=logging.INFO)
Run Code Online (Sandbox Code Playgroud)
我希望我的程序为每次执行脚本覆盖logs.log文件,目前它只是附加到旧日志.我知道下面的代码会覆盖,但如果有办法通过日志配置来实现,它看起来会更好.
with open("logs.log", 'w') as file:
pass
Run Code Online (Sandbox Code Playgroud) 我有一个HashMap<String, String>,其中值字符串可以是long或double.例如,123.000可被存储为123(存储为长),和123.45如123.45(双).
取这两个hashmap值:
("一","123"); ("两个","123.45")
当我将上面的地图转换为JSON字符串时,JSON值不应该有双引号,比如
预期:{"one":123,"two":123.45}
实际:{"one":"123","two":"123.45"}
这是我的代码如下:
String jsonString = new Gson().toJson(map)
Run Code Online (Sandbox Code Playgroud)
我更喜欢使用GSON的解决方案,但也欢迎使用其他库或库.
我不理解javadoc中的KafkaConsumer position()和commited()方法之间的区别。
position:公共long position(TopicPartition分区)获取将要提取的下一条记录的偏移量(如果存在具有该偏移量的记录)。
已提交:获取给定分区的最后一个提交偏移量(无论此提交是由该进程还是其他进程执行)。如果发生故障,此偏移量将用作使用者的位置。该调用将阻止进行远程调用,以从服务器获取最新的提交偏移量。
这是否意味着如果获取的consumer.poll()允许说50条消息从偏移101到150,并且消费者具有手动偏移提交。而且使用者仍在处理这50条消息,因此最后一个提交的偏移量是100。现在,commited()将返回100,但是位置将返回151(已经获取到消息101到150)。
来自终端的 Gradle 构建命令在不到一分钟的时间内完成,但在 Intellij IDE 上执行刷新/同步需要 15 到 30 分钟。尝试将内存(-Xmx)更改为 1g、2g、3g 到 8g 的不同级别,但所用时间仍然在相同范围内。Out 项目使用了来自 maven/artifactory repo 的大约 50 个 jar。
我使用 YourKit Profiler 分析了 gradle 进程,但无法确定并解决为什么需要这么长时间。以前从未使用过 YourKit。下面附上来自 YourKit 的屏幕截图。
事件时间线显示大部分时间花在“socket.Read”事件上(附在下面),其他事件花费的时间可以忽略不计。
更新:使用 Gradle 4.1 版
有什么方法可以提取字符串/句子的一部分,仅给出子字符串的起始位置和结束位置的起始索引和终止索引?例如:“这是一个例子00001。等等。” 我需要使用正则表达式从位置 10 到 15(即示例)获取子字符串。
下面的异常处理程序对我的所有控制器来说都很常见,工作正常,只是我需要AbstractHandlerExceptionResolver在处理异常后从类中禁用 WARN 日志。使用Spring Web MVC 5.x版本。
@ControllerAdvice
public class AllExceptionHandler{
@ExceptionHandler(SomeCustomException.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
public void exceptionHandler() {
}
}
Run Code Online (Sandbox Code Playgroud)
这是我试图避免生成的日志:
2019 年 2 月 20 日 15:22:54,896 警告 [http-nio-8080-exec-1] (AbstractHandlerExceptionResolver.java:140) - 已解决 [com.rasa.rrt.ste.controller.SomeCustomException]
我没有使用 Spring Boot。
尝试使用构造函数扩展并调用上面的AllExceptionHandler类 ,但它抛出.ExceptionHandlerExceptionResolverwarnLogCategory(null)AllExceptionHandlerNullPointerException
另外,我在 Google 上看到设置此属性spring.mvc.log-resolved-exception=false以禁用警告,但不确定在哪里/如何设置它。
首次设置Kafka,Kafka 0.11。使用几乎所有默认配置。产生了一些关于主题ABC的消息。2使用者被编码为使用来自同一主题的消息。每个使用者都属于不同的组ID GROUP.1和GROUP.2
想要查看所有消息的主题以及偏移量详细信息。
kafka-consumer-groups --bootstrap-server localhost:9092 --describe --group GROUP.1
Run Code Online (Sandbox Code Playgroud)
引发以下错误,
错误:使用者组“ GROUP.1”不存在。
GROUP.2的错误也相同。昨天,但今天没有,我为其中一个小组获得了一些输出,没有错误。我想念的是什么?需要在某处进行配置以保留使用者组详细信息,或者该命令仅在当前正在运行具有给定组ID的使用者时才起作用,或者?
我尝试过,kafka-consumer-groups --zookeeper localhost:2181 --describe --group GROUP.1但是遇到了同样的错误。
还尝试了Kafka-consumer-offset-checker命令。
kafka-consumer-offset-checker --zookeeper localhost:2181 --topic ABC --group GROUP.1
Run Code Online (Sandbox Code Playgroud)
[2017-12-19 19:25:01,654]警告:不推荐使用ConsumerOffsetChecker,并将在0.9.0之后的版本中删除。请改用ConsumerGroupCommand。(kafka.tools.ConsumerOffsetChecker $)由于以下原因而退出:org.apache.zookeeper.KeeperException $ NoNodeException:KeeperErrorCode = Nocons for /consumers/GROUP.1/offsets/ABC/2。
java ×3
apache-kafka ×2
gradle ×1
gson ×1
iterator ×1
json ×1
logging ×1
python-2.7 ×1
regex ×1
spring ×1
spring-mvc ×1