약 lists, 당신은 자바 객체를 생성하고이 같은 setValue()
통해 중포 기지 기준에 해당 객체를 쓰기 예제가있다 : 당신이 작성하지 않은 내부적으로이 작품을, 즉 않는 방법Firebase의 setValue()는 Java 오브젝트에 어떻게 작동합니까? 중포 기지의 문서에서
private static class MyObject {
private String property1;
private int property2;
public MyObject(String value1, int value2) {
this.property1 = value1;
this.property2 = value2;
}
public String getFirstProperty() {
return property1;
}
}
private void populateList() {
Firebase ref = new Firebase("https://MyDemo.firebaseIO-demo.com/myObjects");
ref.push().setValue(new MyObject("myString", "7"));
}
toString()
메소드 등 어떤 값이 Firebase 참조에 정확하게 저장됩니까? 그리고 한 걸음 더 나아가 Firebase 클라이언트는 저장된 값에서 이전 오브젝트를 복원 할 수 있습니까? 방법?
Firebase가 필드를 읽을 수 있도록 private static
클래스가 있어야합니까?
고맙습니다. 그래서 이것은 리플렉션을 아마 사용합니다, 맞습니까? 아마도 getter가 필요한 이유를 알고 있습니까? setter가 없으므로 필드에 액세스 할 때 리플렉션을 사용해야하므로 getter없이 값을 직접 가져 오지 않는 이유는 무엇입니까? 그렇지 않다면 어쨌든 이것을 받아 들여야하므로 아무런 문제가 없습니다. – caw
JavaBeans 속성은 일반적으로 [Introspection]을 사용합니다 (http://docs.oracle.com/javase/7/docs/api/java/beans /Introspector.html), 그래, 그 장면의 뒤에서 반사를 사용합니다. –
수정 사항 : Firebase Java 클라이언트 라이브러리는 백그라운드에서 [Jackson 1.x] (http://jackson.codehaus.org/)를 사용하고 Jackson은 [자체 인트로 스펙트] (http://jackson.codehaus.org/ 1.9.9/javadoc/org/codehaus/jackson/map/introspect/package-summary.html), JavaBeans와는 다릅니다. –