在我的测试类中
String json="{n" +
"t"masterName": "test1",n" +
"t"masterSubjectName": "testsubject",n" +
"t"masterRoll": "534",n" +
"t"firstName": "studentFirstName",n" +
"t"rollNumber": "23"n" +
"}";
Student studentDTO=new Gson().fromJson(json, Student.class);
System.out.println(studentDTO);
Student.java
@Data
public class Student {
@Delegate(types = Master.class)
private Master master=new Master();
private String firstName;
private String lastName;
private int rollNumber;
}
Master.java
@Data
public class Master {
private String masterName;
private String masterSubjectName;
private int masterRoll;
}
这给出了响应:
Student(master=Master(masterName=null, masterSubjectName=null, masterRoll=0), firstName=studentFirstName, lastName=null, rollNumber=23)
当我解析json字符串"时;json";到学生班,
为什么值没有被传递到";Master.java"内部dto?
我需要类似Student的东西(masterName=test1,masterSubjectName=testsubject,masterRoll=534,firstName=studentFirstName,rollNumber=23(
@Delegate中的'types'值应该是具有getter方法的Interface,例如getMasterName((、getMasterSubjectName。。。等等
文件:https://projectlombok.org/features/experimental/Delegate