使用Jackson实现XML到Java对象的反序列化

使用Jackson实现XML到Java对象的反序列化,java,xml,xml-parsing,jackson,Java,Xml,Xml Parsing,Jackson,我有一个XML文件,我想用Jackson对它进行反序列化。但是我得到了上面的异常 <students> <student> <Name>Tapishnu2</Name> <Age>25</Age> <Department>Computer</Department> </student> <studen

我有一个XML文件,我想用Jackson对它进行反序列化。但是我得到了上面的异常

   <students>
     <student>
        <Name>Tapishnu2</Name>
        <Age>25</Age>
        <Department>Computer</Department>
     </student>
     <student>
        <Name>Tapishnu1</Name>
        <Age>25</Age>
        <Department>Computer</Department>
     </student>
      <student>
        <Name>Tapishnu2</Name>
        <Age>25</Age>
        <Department>Computer</Department>
     </student>
      <student>
        <Name>Tapishnu3</Name>
        <Age>25</Age>
        <Department>Computer</Department>
      </student>
   </students>
我得到以下错误 com.fasterxml.jackson.databind.JsonMappingException:找不到适合类型[simple type,class com.Team.Students]的构造函数:无法从JSON对象实例化(缺少默认构造函数或创建者,或者可能需要添加/启用类型信息?) 在[来源:C:\Avatar\Students.xml;行:2,列:3]


我猜注释有问题。我是Jackson的新手。因此,非常感谢您的帮助。

Jackson需要一个无参数构造函数来将JSON反序列化为Java对象。在反序列化过程中,Jackson直接使用属性/方法,而不是构造函数

尝试添加

public Students() {
    super();
    this.student = new Student[]{};
}
或许

public Students() {
    this(new Student[]{});
}

你想叫这个(新学生[]{})@是的,抱歉,
public Students() {
    this(new Student[]{});
}