I want to know how to pass an object to Activity using the following code

Asked

Viewed 42 times

2

public class PessoasDAO extends DataBase {

public PessoasDAO(Context context) {
    super(context);

public Pessoas findByPass(String senhaLogin) {
    String sql = "SELECT * FROM pessoas  WHERE SENHA_PESS = ?";
    String[] argumentos = new String[] { senhaLogin };
    Cursor cursor = database.rawQuery(sql, argumentos);
    cursor.moveToFirst();
    return montarPessoa(cursor);
    }

//MONTAR PESSOA
public Pessoas montarPessoa(Cursor cursor) {
    if (cursor.getCount() == 0) {
        return null;
    }else {
        long id = cursor.getLong(cursor.getColumnIndex("COD_PESS"));
        String nome = cursor.getString(cursor.getColumnIndex("NOM_PESS"));
        String funcao = cursor.getString(cursor.getColumnIndex("FUNC_PESS"));
        String senha = cursor.getString(cursor.getColumnIndex("SENHA_PESS"));
        return new Pessoas(id, nome, funcao, senha);
    }

Above my DAO class and below the People class. How should I implement the Controller class so that the data of the class people recovered from the BD is taken to Activity by means of the serializable.

public class Pessoas implements Serializable {

private Long id;
private String nome;
private String funcao;
private String senha;

public Pessoas(long id, String nome, String funcao, String senha) {
    this.id = id;
    this.nome = nome;
    this.funcao = funcao;
    this.senha = senha;
}

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}

public String getFuncao() {
    return funcao;
}

public void setFuncao(String funcao) {
    this.funcao = funcao;
}

public String getSenha() {
    return senha;
}

public void setSenha(String senha) {
    this.senha = senha;
}
  • It wouldn’t just be instantiating into each other?

  • My doubt is how I would do it in Controller to play on mainActivity.

1 answer

1


In fact the MainActivity is already the controller so just instantiate your DAO class there and call the functions:

//Importa a classe DAO (aqui é só um exemlpo)
import examplo.mvc.PessoasDAO;

public class MainActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_activity);

        //Instancia o DAO
        PessoasDAO dao = new PessoasDAO();
        //Cria uma variável do tipo Pessoas que vai receber o retorno do método findByPass da classe DAO
        Pessoas pessoas = dao.findByPass('senha');
    }
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.