我是Java的新手.我正在尝试显示JSON数据,因为我决定去杰克逊图书馆.但是我得到了错误.
我在用
jackson-annotations-2.3.0.jar
jackson-core-2.4.2.jar
jackson-databind-2.4.2.jar
Run Code Online (Sandbox Code Playgroud)
这是我的对象,在这里我有一个依赖"tnStudentLocLog"
public class Student implements java.io.Serializable, WorkItem {
private int studentId;
private Date date;
private Date startTime;
private Date endtime;
private int room;
private Set tnStudentLocLog;
public Student() {
}
public Student(int studentId,Date date, int room, Date startTime, Date endtime) {
this.studentId = studentId;
this.date = date;
this.room = room;
this.startTime = startTime;
this.endtime = endtime;
}
}
Run Code Online (Sandbox Code Playgroud)
UserController类:
@Controller
@RequestMapping(value="/students")
public class StudentController {
private static Logger logger = Logger.getLogger( StudentController.class);
private StudentManagerDelegate studentDelegate;
public StudentController() throws Exception
{
studentDelegate= new StudentManagerDelegate(ServiceType.LOCAL);
}
/********* GET ALL STUDENTS ************/
@RequestMapping(method=RequestMethod.GET)
@ResponseStatus(HttpStatus.OK)
public @ResponseBody SuccessResponse<List<Student>> getAllStudents() throws Exception {
Map<String,List<Student>> studentsMap = new HashMap<String,List<Student>>();
SuccessResponse<List<Student>> resp = new SuccessResponse<List<Student>>();
resp.list = studentDelegate.load();
return resp;
}
Run Code Online (Sandbox Code Playgroud)
在这里,我得到了正确的结果.但是,"studentId":2正在循环自己,如下所示
{"max":"30","list":[{"studentId":2,"date":1339327730000,"startTime":1339327806000,"endtime":1339329470000,"room":0,"tnStudentLocLog":
[{"id":"studentId":2,"inTime":1339327872000},"sequenceId":2,"outTime":1339327967000,"Student":{"studentId":2,"date":1339327730000,"startTime":1339327806000,"endtime":1339329470000,"tnStudentLocLog":[{"id":{"studentId":2,"room":10,"inTime":1339327872000},"sequenceId":2,"outTime":1339327967000,"Student":{"studentId":2,"date":1339327730000,"startTime":1339327806000,"endtime":1339329470000,"tnStudentLocLog":[{"id":.......
Run Code Online (Sandbox Code Playgroud)
但是,在我输入"/ students/4"时的URL中.它显示正确.我不知道究竟发生了什么.我看到很多帖子,他们正在改变杰克逊核心的版本,注释.但是,这不符合我的情况.
在此先感谢您的帮助.
欢迎来到java。使用 Java 时需要学习的第一件事就是如何设置和使用 CLASSPATH。“Class Not Found”错误意味着您的一个或多个 jar 文件不在类路径中。Java 不会隐式地在任何地方(甚至不是类所在的子目录)查找 .jar 文件。你必须告诉它去哪里寻找。如何设置 CLASSPATH?这取决于您的平台(Windows、Linux、IIS、Apache、Tomcat、Bluejay、Eclipse 等...)学好,您将避免许多头痛。
| 归档时间: |
|
| 查看次数: |
43251 次 |
| 最近记录: |