2016-08-22 167 views
0

我有一个用户类,并成功地在db中插入记录。现在我需要通过类对象获取所有这些记录。我对此很陌生。任何人都可以告诉我如何才能达到此目的?如何使用类对象从数据库中获取数据?

public class User 
{ 
    String userName; 
    String Password; 
    int userStatus; 
} 

回答

0

首先,必须创建一个类,将有相同的getter和setter,你必须列在数据库中说你正在类User.java所以,

public class User { 
    //private variables 
    int _id; 
    String _name; 
    String Password; 
    int status 
    // Empty constructor 
    public User(){ 

    } 
    // constructor 
    public User(int id, String name, String Password,int status){ 
     this._id = id; 
     this._name = name; 
     this.Password = Password; 
     this.status = status; 
    } 

    // constructor 
    public User(String name, String Password){ 
     this._name = name; 
     this.Password = Password; 
     this.status = status; 
    } 
    // getting ID 
    public int getID(){ 
     return this._id; 
    } 

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

    // getting name 
    public String getName(){ 
     return this._name; 
    } 

    // setting name 
    public void setName(String name){ 
     this._name = name; 
    } 

    // getting pwd 
    public String getPassword(){ 
     return this.Password; 
    } 

    // setting pwd 
    public void setPassword(String status){ 
     this.Password = status; 
    } 

    // getting status 
    public String getstatus(){ 
     return this.status; 
    } 

    // setting phone number 
    public void setstatus(String status){ 
     this.Password = status; 
    } 
} 

现在您需要从您的数据库中使用以下代码获取数据库的所有记录:sqlite,

public List<User> getAllUser() { 
      List<User> UserList = new ArrayList<User>(); 
      String selectQuery = "SELECT * FROM " + TABLE_USER; 


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

     // looping through all rows and adding to list 
     if (c.moveToFirst()) { 
      do { 

       User UserSingleUnit = new User(); 
       UserSingleUnit.setERId(c.getInt(c.getColumnIndex(KEY_ID))); 
       UserSingleUnit.setName(c.getString(c.getColumnIndex(KEY_NAME))); 
       UserSingleUnit.setPassword(c.getString(c.getColumnIndex(KEY_PWD))); 
     UserSingleUnit.setStatus(c.getString(c.getColumnIndex(KEY_STATUS))); 

       // add 
       UserList.add(UserSingleUnit); 
      } while (c.moveToNext()); 
     } 
     // db.close(); 
     c.close(); 
     return UserList; 
    } 

它会明确地解决你的问题