java - com.google.firebase.database.DatabaseException:发现两个 getter 或属性的区分大小写冲突的字段:名称
问题描述
任何人都可以检查我的代码中是否有错误
com.google.firebase.database.DatabaseException: Found two getters or fields with conflicting case sensitivity for property: name
****package com.andisofttechnology.foodapp.model;
**
* Created by fullfocus on 8/25/2018.
*/
public class User {
public String Name,Password;
public User(){
}
public User(String name,String password){
Name = name;
Password = password;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getPassword() {
return Password;
}
public void setPassword(String password) {
Password = password;
}
}
com.google.firebase.database.DatabaseException: Found two getters or fields with conflicting case sensitivity for property: name
SignIn.java
package com.andisofttechnology.foodapp;
import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.andisofttechnology.foodapp.model.User;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import com.rengwuxian.materialedittext.MaterialAutoCompleteTextView;
import com.rengwuxian.materialedittext.MaterialEditText;
com.google.firebase.database.DatabaseException: Found two getters or fields with conflicting case sensitivity for property: name
public class SignIn extends AppCompatActivity {
EditText edtPhone,edtPassword;
Button btnSignIn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sign_in);
edtPassword = (MaterialEditText) findViewById(R.id.edtPassword);
edtPhone = (MaterialEditText)findViewById(R.id.edtPhone);
btnSignIn = (Button)findViewById(R.id.btnSignIn);
//Init FireBase
FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference table_user = database.getReference("User");
btnSignIn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final ProgressDialog mDialog = new ProgressDialog(SignIn.this);
mDialog.setMessage("Please waiting...");
mDialog.show();
table_user.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Check if user not exist in database
if(dataSnapshot.child(edtPhone.getText().toString()).exists()) {
//Get User Information
mDialog.dismiss();
User user = dataSnapshot.child(edtPhone.getText().toString()).getValue(User.class);
if (user.getPassword().equals(edtPassword.getText().toString())) {
Toast.makeText(SignIn.this, "Sign in sucessfully !", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(SignIn.this, "Sign in failed !!!", Toast.LENGTH_SHORT).show();
}
}else {
mDialog.dismiss();
Toast.makeText(SignIn.this,"User not exist", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
//Please check I Have a mistakes somewhere
}
});
}
});
}
}***
解决方案
发现两个 getter 或属性的区分大小写冲突的字段:名称
您的用户MODEL
类将是。
public class User {
private String name,password;
private User(){
}
public User(String name,String password){
name = name;
password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
password = password;
}
}
推荐阅读
- jpa - 通过 JPA 存储库在运行时通过 And 或 Or 创建条件
- regex - 如何修改此正则表达式以允许在电子邮件的用户名中使用点 (.)
- python - 你如何用一组子集的平均值填充 NaN?
- python - 如何测试包含不同日期的 datetime.now() 的 python 方法?
- time-complexity - 在某些位置应用 if 语句生成所有可能序列的复杂性是什么
- c# - 尝试使用 autofac 在测试类中注入模拟实例,但容器在其他测试类中注入相同的实例
- xml - 使用 xslt 编码查找具有值的所有元素名称
- c# - 如何从特征提取中找到匹配的数量?
- ios - Swift 4 - NSURLComponents 使用正斜杠设置密码
- javascript - JSON.parse 结果到正确的对象数组