Home - Sutil/APA GitHub Wiki
Baixe a biblioteca SDB clicando aqui.
1 - Importe a biblioteca (apa.jar) para dentro do seu projeto Android.
2 - Se estiver usando o Eclipse IDE, clique com o botão direito no arquivo apa.jar e após clique na opção "Build Path" >> "Add to Build Path".
3 -Edite o arquivo AndroidManifest.xml
Adicionar o atributo "android:name" na tag application.
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name="br.com.sutil.apa.APAApplication">
Dentro da tag application adicione duas tags "meta-data" para definir o nome da base de dados e também a versão.
Note que os atributos "android:name" deve ser "DB_NAME" e DB_VERSION".
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name="com.br.sutildb.SutilApplication">
<meta-data android:name="DB_NAME" android:value="sutil.db"/>
<meta-data android:name="DB_VERSION" android:value="1"/>
<activity
android:name="com.br.yourapp.YourActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Para gerar tabelas a partir de suas Classes, escreva-as da seguinte maneira:
@Entity(name = "CARRO")
public class Carro implements Serializable{
private static final long serialVersionUID = 1L;
@Id
private long id;
@Column(name = "NOME")
private String nome;
@OneToMany(referencedColumn = "carro_fk")
private List<Roda> rodas;
...
@Entity(name= "pessoa")
public class Pessoa implements Serializable{
private static final long serialVersionUID = 1L;
@Id
private long id;
@Column(name = "NOME")
private String nome;
@Column(name = "IDADE")
private int idade;
@ManyToOne(columnFkName = "carro_fk")
private Carro carro;
...
A classe REPOSITORY da entidade deve estender APARepository
public class CarroRepository extends APARepository<Carro> {
public HouseRepository(Context context) {
super(Carro.class, context);
}
}
...
Pronto, na sua activity basta usar da seguinte forma;
CarroRepository repository = new CarroRepository(this);
//recuperando lista
List<Carro> carros = repository.findAll();
Carro carro = repository.findOne(1L);
// alterações
repository.save();