Java 将对象推送到firebase时将字段名转换为小写
我正在使用我的food应用程序的服务器端版本,因此我必须对当前的现有数据进行更改。但是,当将模型对象推送到我的firebase数据库时,“Image”和“Name”字段的大小写会自动更改为小写,这在使用.child(“Image”)函数访问这些值时会出现问题。有谁能给我一个变通办法吗Java 将对象推送到firebase时将字段名转换为小写,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我正在使用我的food应用程序的服务器端版本,因此我必须对当前的现有数据进行更改。但是,当将模型对象推送到我的firebase数据库时,“Image”和“Name”字段的大小写会自动更改为小写,这在使用.child(“Image”)函数访问这些值时会出现问题。有谁能给我一个变通办法吗 public class CategoryModel { private String Image; private String Name; public CategoryModel(S
public class CategoryModel {
private String Image;
private String Name;
public CategoryModel(String image, String name) {
Image = image;
Name = name;
}
public CategoryModel() {
}
public String getImage() {
return Image;
}
public void setImage(String image) {
Image = image;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
}
这是正在序列化的JavaBean类型对象的标准行为。最好接受它,因为这是正常预期的行为。(请注意,您的对象字段实际上与以小写字符开头的标准Java约定背道而驰。但是您可以自由地做任何您想做的事情,是吗?) 如果不接受默认的标准行为,可以通过使用注释对getter方法进行注释来更改正在序列化的每个属性的字段名,这可以更改用于序列化和反序列化数据的字段名
@PropertyName("Image")
public String getImage() {
return Image;
}
同样,我不建议这样做,但如果您必须…是的,这是必须的,因为我无法更改以前的数据库,该数据库已包含以大写开头的字段……非常感谢……)