- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个接受 OkHttp#response
的方法:
public static Map<String, Object> getResponseBody(Response response) throws IOException {
return new ObjectMapper()
.readValue(response.body().string(),
new TypeReference<Map<String, Object>>() {
});
}
据我了解,如果多个类使用 getResponseBody
,我将遇到大问题,因为它们都将访问相同的 Response
。
这样做可以解决吗?:
public static Map<String, Object> getResponseBody(Response response) throws IOException {
ResponseBody responseBody = response.body();
String responseString = responseBody.string();
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = mapper
.readValue(responseString,
new TypeReference<Map<String, Object>>() {
});
return map;
}
最佳答案
正如评论中提到的,
tl;dr:我提供的第一个代码始终是线程安全的。
Every thread that calls the getResponseBody method will provide a thread local Response instance. There is no shared static resource needing synchronization here. It looks thread safe.
Local variables are not shared between threads for non-static and static methods. What they reference could be.
The second method does the same thing as the first method, but with named variables for some of the values. It doesn't change it's behaviour.
关于java - 创建新对象是否有助于防止静态方法内的并发问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53490877/
是否有任何工具可以帮助 JSP 文件中的字符串国际化? 大多数 IDE(例如 NetBeans)都为 Java 代码提供了这样的功能。但是,对于 NetBeans,JSP 文件不存在此类功能。 与 g
我在 Android Studio 项目的纯 Java 模块中使用 Lombok。这是模块的 build.gradle: apply plugin: 'java' apply plugin: 'war
我是一名优秀的程序员,十分优秀!