Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android getter和setter,数据库sqlite(helper类)_Java_Android_Sqlite - Fatal编程技术网

Java Android getter和setter,数据库sqlite(helper类)

Java Android getter和setter,数据库sqlite(helper类),java,android,sqlite,Java,Android,Sqlite,我在一个数据库上有一个包含两列的表,然后我尝试使用webservice、JSON将一些数据从某个URL解析到数据库并保存它。我试着用这种方法来做 public void saveDataRecord(String id, String name) { ContentValues contentValues = new ContentValues(); contentValues.put(CATEGORY_COLUMN_ID, id); cont

我在一个数据库上有一个包含两列的表,然后我尝试使用webservice、JSON将一些数据从某个URL解析到数据库并保存它。我试着用这种方法来做

  public void saveDataRecord(String id, String name) {
        ContentValues contentValues = new ContentValues();
        contentValues.put(CATEGORY_COLUMN_ID, id);
        contentValues.put(CATEGORY_COLUMN_NAME, name);
        database.insert(TABLE_NAME, null, contentValues);
        }
然而,我也有一个包含setter和getter的模型类,当我试图使用listit从数据库中读取数据时可以使用它。它在我以前的对象上工作,其中包含数据库,并且已经插入了值。现在我想使用它,因为它有参数,并且可以很有用地读取列表。请看下面的代码。我有点困惑,怎么用getId,getName还是setId,setName? 这个

还是这个

 public void saveDataRecord(TheModelClass blablabla) {
                ContentValues contentValues = new ContentValues();
                contentValues.put(CATEGORY_COLUMN_ID, blablabla.setId());
                contentValues.put(CATEGORY_COLUMN_NAME, blablalbla.setName());
                database.insert(TABLE_NAME, null, contentValues);
    }
即使我在我的另一个项目上做了这件事

public List<TheModelClass> getAllEffectiveRates() {
        List<TheModelClass> EffectiveRates = new ArrayList<TheModelClass>();
        String selectQuery = "SELECT  * FROM " + TABLE_EFFECTIVE_RATE;

        SQLiteDatabase db = this.getReadableDatabase();
        Cursor c = db.rawQuery(selectQuery, null);

        // looping through all rows and adding to list
        if (c.moveToFirst()) {
            do {
                TheModelClass example = new TheModelClass();
                example.setERId(c.getInt(c.getColumnIndex(KEY_ER_ID)));
                example.setERTenor(c.getInt(c.getColumnIndex(KEY_ER_TENOR)));
                example.setERRate(c.getDouble(c.getColumnIndex(KEY_ER_RATE)));

                // add
                EffectiveRates.add(example);
            } while (c.moveToNext());
        }
        // db.close();
        c.close();
        return EffectiveRates;
    }

我仍然不清楚getter和setter到底做了什么

getter基本上返回该实例所持有的数据。Setter设置实例要保存的数据

在您的情况下,在插入数据时,应该使用getter作为ContentValues实例中的值。因此,它应该是:

public void saveDataRecord(TheModelClass blablabla) {
    ContentValues contentValues = new ContentValues();
    contentValues.put(CATEGORY_COLUMN_ID, blablabla.getId());
    contentValues.put(CATEGORY_COLUMN_NAME, blablalbla.getName());
    database.insert(TABLE_NAME, null, contentValues);
}

getter将返回一个值。setter通常不会返回值。因此,如果您使用setter,您将只在ContentValues中设置实例的值,而不会实际使用它,因为调用不会返回任何内容。

Getter基本上返回该实例持有的数据。Setter设置实例要保存的数据

在您的情况下,在插入数据时,应该使用getter作为ContentValues实例中的值。因此,它应该是:

public void saveDataRecord(TheModelClass blablabla) {
    ContentValues contentValues = new ContentValues();
    contentValues.put(CATEGORY_COLUMN_ID, blablabla.getId());
    contentValues.put(CATEGORY_COLUMN_NAME, blablalbla.getName());
    database.insert(TABLE_NAME, null, contentValues);
}

getter将返回一个值。setter通常不会返回值。因此,如果您使用setter,您将只在ContentValues中设置实例的值,而不会实际使用它,因为调用不会返回任何内容。

是的,您可以使用Get Set方法

public class GetSetClass {

// private variables
int _id;
String _data;


// Empty constructor
public GetSetClass() {
}

// constructor
public GetSetClass(int id, String data) {
    this._id = id;
    this._DataList_id = DataList_id;
}

// constructor
public GetSetClass(String data) {
    this._data = data;
}

// getting ID
public int getID() {
    return this._id;
}

// setting id
public void setID(int id) {
    this._id = id;
}

public String getdata() {
    return this._data;
}

public void setdata(String data) {
    this._data = data;
}
}
有关使用getset的集合数据,请参见下面的代码


是的,您可以使用Get Set方法

public class GetSetClass {

// private variables
int _id;
String _data;


// Empty constructor
public GetSetClass() {
}

// constructor
public GetSetClass(int id, String data) {
    this._id = id;
    this._DataList_id = DataList_id;
}

// constructor
public GetSetClass(String data) {
    this._data = data;
}

// getting ID
public int getID() {
    return this._id;
}

// setting id
public void setID(int id) {
    this._id = id;
}

public String getdata() {
    return this._data;
}

public void setdata(String data) {
    this._data = data;
}
}
有关使用getset的集合数据,请参见下面的代码


更好地了解有关使用对象和使用包裹的更多信息。 以下是一个非常有用的工具,可以生成您需要的所有代码,包括表、模型、用于插入的类等:

http://www.codeproject.com/Tips/842150/Generator-for-SQLite-Use-in-Android
创建带有Id、名称和代码的表调用Dic 在android中,输入EditText作为名称和代码,然后单击onse save按钮

dic.setName(edtName.getText().toString());
dic.setCode(edtCode.getText().toString());
database.Open()
database.insert(dic);
database.close();
如果要将数据从数据库显示到窗体:

Dic dic = new DIc();
database.open();
dic = database.findDic("id = 1");
database.Close;
lblName.setText(dic.getName().toString());
lblCode.setText(dic.getCode().toString());
为模型添加一个包,并将每个模型放在单独的文件中。 为数据库添加一个包
添加两个文件,一个为OpenHelper.Java,另一个为Database.Java,以便于管理代码

更好地了解有关使用对象和包裹的更多信息。 以下是一个非常有用的工具,可以生成您需要的所有代码,包括表、模型、用于插入的类等:

http://www.codeproject.com/Tips/842150/Generator-for-SQLite-Use-in-Android
创建带有Id、名称和代码的表调用Dic 在android中,输入EditText作为名称和代码,然后单击onse save按钮

dic.setName(edtName.getText().toString());
dic.setCode(edtCode.getText().toString());
database.Open()
database.insert(dic);
database.close();
如果要将数据从数据库显示到窗体:

Dic dic = new DIc();
database.open();
dic = database.findDic("id = 1");
database.Close;
lblName.setText(dic.getName().toString());
lblCode.setText(dic.getCode().toString());
为模型添加一个包,并将每个模型放在单独的文件中。 为数据库添加一个包
添加两个文件,一个为OpenHelper.Java,另一个为Database.Java,以便于代码管理

我应该使用get还是set???我应该使用get还是set???它类似于从输入获取,然后放入,最后插入到表中。我说的对吗?它就像从输入中获取,然后放入,最后插入到表中。我说的对吗?我在使用它时发现了这些。->>>删除按钮生成插入脚本,查找按钮生成更新脚本,查找所有生成删除脚本,选中所有并更新生成相同的内容,然后插入生成查找脚本。还有别的吗cool@JediFighter哦看在上帝的份上,我真的从来没有一个一个地检查过它们,通常我会点击全部,然后使用它,稍后我会更正它们,但无论如何谢谢。我在使用它时发现了这些。->>>删除按钮生成插入脚本,查找按钮生成更新脚本,查找所有生成删除脚本,选中所有并更新生成相同的内容,以及插入生成查找脚本。还有别的吗cool@JediFighter哦看在上帝的份上,我真的从来没有一个一个地检查过它们,通常我会点击全部,然后使用它,我以后会改正的,不过无论如何谢谢你。