标签: java

使用Jackson忽略JSON对象上的新字段

我正在使用Jackson JSON库将一些JSON对象转换为Android应用程序上的POJO类.问题是,JSON对象可能会更改并在应用程序发布时添加新字段,但是当添加一个简单的String字段时,它会崩溃,这可以安全地忽略.

有没有办法告诉杰克逊忽略新添加的字段?(例如,POJO对象上不存在)?全球忽视将是伟大的.

java json jackson

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

无法捕获的ChuckNorrisException

是否有可能在Java中构建一个代码片段,使得假设无法java.lang.ChuckNorrisException捕获?

想到的想法是使用例如拦截器或面向方面的编程.

java aop exception-handling exception

588
推荐指数
13
解决办法
3万
查看次数

此环境中未提供编译器.也许您运行的是JRE而不是JDK?

我正在使用m2eclipse在Eclipse中编译一个项目.我在Eclipse中设置JDK路径,如下所示:

Windows-->preferences-->installed jres--> jdk1.7.xx  path
Run Code Online (Sandbox Code Playgroud)

但这显示出错误

[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE    rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.424s
[INFO] Finished at: Tue Oct 29 15:21:01 IST 2013
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-   plugin:3.1:compile (default-compile) on project TEST-WEB: Compilation failure
[ERROR] No compiler is provided …
Run Code Online (Sandbox Code Playgroud)

java eclipse m2eclipse maven java-7

588
推荐指数
17
解决办法
107万
查看次数

抽象类可以有构造函数吗?

抽象类可以有构造函数吗?

如果是这样,它如何使用以及用于何种目的?

java constructor abstract-class

585
推荐指数
10
解决办法
55万
查看次数

给定java hashmap中的键,如何更新值?

假设我们有一个HashMap<String, Integer>Java.

对于我找到的每个字符串的存在,如何更新(递增)字符串键的整数值?

人们可以移除并重新进入该对,但开销将是一个问题.
另一种方法是刚刚放置新的一对,旧的一对将被替换.

在后一种情况下,如果与我试图插入的新密钥存在哈希码冲突会发生什么?哈希表的正确行为是为其分配不同的位置,或者在当前存储桶中创建一个列表.

java key hashmap

585
推荐指数
12
解决办法
73万
查看次数

如何处理未经检查的投射警告?

Eclipse正在向我发出以下形式的警告:

类型安全:从Object到HashMap的未选中转换

这是来自对我无法控制的API的调用返回Object:

HashMap<String, String> getItems(javax.servlet.http.HttpSession session) {
  HashMap<String, String> theHash = (HashMap<String, String>)session.getAttribute("attributeKey");
  return theHash;
}
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我想避免Eclipse警告,因为理论上它们至少表明存在潜在的代码问题.但是,我还没有找到一种消除这种方法的好方法.我可以将涉及的单行提取到方法中并添加@SuppressWarnings("unchecked")到该方法,从而限制了我忽略警告的代码块的影响.有更好的选择吗?我不想在Eclipse中关闭这些警告.

在我来到代码之前,它更简单,但仍然引发了警告:

HashMap getItems(javax.servlet.http.HttpSession session) {
  HashMap theHash = (HashMap)session.getAttribute("attributeKey");
  return theHash;
}
Run Code Online (Sandbox Code Playgroud)

当您尝试使用哈希时,问题出在其他地方,您会收到警告:

HashMap items = getItems(session);
items.put("this", "that");

Type safety: The method put(Object, Object) belongs to the raw type HashMap.  References to generic type HashMap<K,V> should be parameterized.
Run Code Online (Sandbox Code Playgroud)

java generics warnings

583
推荐指数
12
解决办法
42万
查看次数

有什么方法可以在线声明一个数组?

假设我有一个方法m(),它将一个字符串数组作为参数.有没有办法在拨打电话时能够在线声明这个数组?即代替:

String[] strs = {"blah", "hey", "yo"};
m(strs);
Run Code Online (Sandbox Code Playgroud)

我可以用一行替换它,并避免声明一个我永远不会使用的命名变量吗?

java arrays

583
推荐指数
6
解决办法
31万
查看次数

java.util.Date到XMLGregorianCalendar

是不是有一种方便的方法从java.util.Date到XMLGregorianCalendar?

java xml date xmlgregoriancalendar

582
推荐指数
8
解决办法
54万
查看次数

581
推荐指数
10
解决办法
45万
查看次数

ConcurrentHashMap和Collections.synchronizedMap(Map)有什么区别?

我有一个Map,它将被多个线程同时修改.

Java API中似乎有三种不同的同步Map实现:

  • Hashtable
  • Collections.synchronizedMap(Map)
  • ConcurrentHashMap

据我所知,这Hashtable是一个旧的实现(扩展过时的Dictionary类),后来经过调整以适应Map界面.虽然它是同步的,但似乎存在严重的可扩展性问题,并且不鼓励新项目.

但是其他两个怎么样?返回的地图Collections.synchronizedMap(Map)和ConcurrentHashMaps 之间有什么区别?哪一种适合哪种情况?

java concurrency dictionary

577
推荐指数
13
解决办法
33万
查看次数