在sqlite上使用getter和setter时很少混淆,因为我是sqlite的新手,我觉得它非常复杂。我的数据库中有各种数据,我想将这些数据发送到另一个类。我怎样才能做到这一点?我尝试了类似下面的东西,但我卡住了,我不知道另一个代码会是什么?有人帮帮我!!
Encap.java
public class Encap {
int _id;
String _phoneno;
String _Msg;
int _year;
int _month;
int _day;
int _hour;
int _minute;
public int get_id() {
return _id;
}
public void set_id(int _id) {
this._id = _id;
}
public String get_phoneno() {
return _phoneno;
}
public void set_phoneno(String _phoneno) {
this._phoneno = _phoneno;
}
public String get_Msg() {
return _Msg;
}
public void set_Msg(String _Msg) {
this._Msg = _Msg;
}
public int get_year() {
return _year;
}
public void set_year(int _year) {
this._year = _year;
}
public int get_month() {
return _month;
}
public void set_month(int _month) {
this._month = _month;
}
public int get_day() {
return _day;
}
public void set_day(int _day) {
this._day = _day;
}
public int get_hour() {
return _hour;
}
public void set_hour(int _hour) {
this._hour = _hour;
}
public int get_minute() {
return _minute;
}
public void set_minute(int _minute) {
this._minute = _minute;
}
}
AppalaHelperAdapter.java
public List<Encap> getAll(){
List<Encap> Encapli=new ArrayList<Encap>();
try{
SQLiteDatabase db=appalaHelper.getWritableDatabase();
String[] columns={appalaHelper.UID,appalaHelper.PHONE_NUMBER,appalaHelper.MESSAGE,appalaHelper.YEAR,appalaHelper.MONTH,appalaHelper.DAY,appalaHelper.HOUR,appalaHelper.MINUTE};
Cursor cursor=db.query(AppalaHelper.TABLE,columns,null,null,null,null,null);
Encap encap=new Encap();
while (cursor.moveToNext()){
encap.set_id(cursor.getInt(cursor.getColumnIndex(appalaHelper.UID)));
encap.set_phoneno(cursor.getString(cursor.getColumnIndex(appalaHelper.PHONE_NUMBER)));
encap.set_Msg(cursor.getString(cursor.getColumnIndex(appalaHelper.MESSAGE)));
encap.set_year(cursor.getInt(cursor.getColumnIndex(appalaHelper.YEAR)));
encap.set_month(cursor.getInt(cursor.getColumnIndex(appalaHelper.MONTH)));
encap.set_day(cursor.getInt(cursor.getColumnIndex(appalaHelper.DAY)));
encap.set_hour(cursor.getInt(cursor.getColumnIndex(appalaHelper.HOUR)));
encap.set_minute(cursor.getInt(cursor.getColumnIndex(appalaHelper.MINUTE)));
Encapli.add(encap);
}
}catch (Exception ex){}
return Encapli;
}
现在,上面的代码是否正确?我如何从anotherClass调用它?
Another.class //我需要数据库中的数据
//I dont know how the List<Encap> are called.
//I only know to call single values like String data=appalaHelperAdapter.getAll(); and use the return string data to other
先谢谢
答案 0 :(得分:1)
我还没有阅读你们所有的代码,但是你正在读取数据库,对吗? 然后
SQLiteDatabase db=appalaHelper.getWritableDatabase();
应该是
SQLiteDatabase db=appalaHelper.getReadableDatabase();
答案 1 :(得分:1)
如果AppalaHelperAdapter
是您的数据库类,您只需创建此类的对象并variable = new AppalaHelperAdapter(context);
,然后您只需调用相关方法。