2016-11-03 5 views
0

У меня возникли проблемы с получением этих данных и отображением на мероприятии, может кто-нибудь мне помочь? Как я могу позвонить DAO и передать эти данные?Как загрузить данные из таблицы sqlite для нескольких EDITTEXT

все следы классов, используемых до сих пор, чтобы решить эту проблему.

модель класса

@DatabaseTable(tableName = "pessoa") 
public class Pessoa implements EntidadePersitivel { 
    @DatabaseField(generatedId = true) 
    private int id; 
    @DatabaseField 
    private int codigo; 
    @DatabaseField 
    private String nome; 
    @DatabaseField 
    private String cnpjCpf; 


    public void setUf(String uf) { 
     this.uf = uf; 
    } 

    @DatabaseField 
    private String rgIE; 
    @DatabaseField 
    private String cep; 
    @DatabaseField 
    private String uf; 
    @DatabaseField 
    private String cidade; 
    @DatabaseField 
    private String bairro; 
    @DatabaseField 
    private String endereco; 
    @DatabaseField 
    private String numero; 
    @DatabaseField 
    private String complemento; 
    @DatabaseField 
    private String foneComercial; 
    @DatabaseField 
    private String foneResidencial; 
    @DatabaseField 
    private String foneCelular; 
    @DatabaseField 
    private String email; 


    public Pessoa(int id, int codigo, String nome, String cnpjCpf, String rgIE, 
        String cep, String cidade, String bairro, String endereco, 
        String numero, String complemento, String foneComercial, String foneResidencial, String foneCelular, String email) { 
     this.id = id; 
     this.codigo = codigo; 
     this.nome = nome; 
     this.cnpjCpf = cnpjCpf; 
     this.rgIE = rgIE; 
     this.cep = cep; 

     this.cidade = cidade; 
     this.bairro = bairro; 
     this.endereco = endereco; 
     this.numero = numero; 
     this.complemento = complemento; 
     this.foneComercial = foneComercial; 
     this.foneResidencial = foneResidencial; 
     this.foneCelular = foneCelular; 
     this.email = email; 
    } 

    public Pessoa() { 

    } 

класс DAO

*/ 

public class PessoaDao extends BaseDaoImpl<Pessoa, Integer> { 
    public PessoaDao(ConnectionSource connectionSource) throws SQLException { 
     super(Pessoa.class); 
     setConnectionSource(connectionSource); 
     initialize(); 


    } 

} 

класс dataBaseHelper

public class DatabaseHelper extends OrmLiteSqliteOpenHelper { 

    private static final String dataBaseName= "central"; 
    private static final int version =1; 

    public DatabaseHelper(Context context) { 
     super(context, dataBaseName, null, version); 
    } 


    @Override 
    public void onCreate(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource) { 

     try { 
      TableUtils.createTable(connectionSource,LoginSeralizable.class); 
      TableUtils.createTable(connectionSource, Pessoa.class); 
     } catch (java.sql.SQLException e) { 
      e.printStackTrace(); 
     } 
    } 

    @Override 
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource, int oldVersion, int newVersion) { 
     try { 
      TableUtils.dropTable(connectionSource, LoginSeralizable.class,true); 
      TableUtils.dropTable(connectionSource, Pessoa.class, true); 

      onCreate(sqLiteDatabase, connectionSource); 
     } catch (java.sql.SQLException e) { 
      e.printStackTrace(); 
     } 

    } 

    @Override 
    public void close(){ 
     super.close(); 
    } 
} 

журнал ошибок

FATAL ИСКЛЮЧЕНИЕ: Thread-284

                  Process: routerbox.com.br.centraisdoassinante, PID: 25202 
                      java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object routerbox.com.br.centraisdoassinante.routerbox.com.br.centraisdoassinante.Dao.PessoaDao.queryForId(java.lang.Object)' on a null object reference 
                       at routerbox.com.br.centraisdoassinante.DadosCadastrais$1.run(DadosCadastrais.java:49) 
                       at java.lang.Thread.run(Thread.java:818) 
+0

Покажите нам, что вы сделали? – chiru

+0

@chiru, я добавил, что он сделал. –

+0

вы получаете какое-то исключение ??? Если да, то добавьте это исключение – Sanjeet

ответ

0

Мне нравится Лукаса говорил, я ссылаться на подключение и управление

protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_dados_cadastrais); 
      databaseHelper = new DatabaseHelper(DadosCadastrais.this); 

      new Thread(new Runnable() { 
       @Override 
       public void run() { 

        try { 
         pessoaDao = new PessoaDao(databaseHelper.getConnectionSource()); 
         pessoa= pessoaDao.queryForId(1); 
         edtNome= (EditText) findViewById(R.id.edtNome); 
         edtNome.setText(pessoa.getNome()); 

        } catch (SQLException e) { 
         e.printStackTrace(); 
        } 


       } 
      }).start(); 



    } 
1

java.lang.NullPointerException: Попытка вызвать виртуальный метод «java.lang.Object routerbox.com.br.centraisdoassinante.routerbox.com.br.centraisdoassinante.Dao.PessoaDao.queryForId (Java. lang.Object)»на нулевой ссылку на объект

Вы пытаетесь выполнить метод queryForId в нулевом объекте, что это значит?

PessoaDao является нестационарным классом, что означает, что вам необходимо создать его, прежде чем вы сможете использовать их методы.

Так вы удалили часть кода, где вы вызываете эту функцию, но если я правильно помню, у вас есть что-то вроде этого:

PessoaDao.queryForId('1');

, но вам нужно сделать:

PessoaDao pessoaDao = new PessoaDao(yourConnectionSource); 
pessoaDao.queryForId('1'); 

Btw, я полагаю, Pessoa является португальский право? Может быть, вы можете спросить в Stack Overflow in portuguese, таким образом, я могу вам ответить лучше, и вам не придется иметь дело с моим плохим английским :)

+0

есть, português. –

+0

Сообщество переполнения стека очень полезно на любом языке, обычно лучше поставил свой вопрос там –

+0

Хорошо, спасибо за ваше терпение и помощь. –

 Смежные вопросы

  • Нет связанных вопросов^_^