GreenDao

1.java

在項目中的build.gradle中添加android

classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0'

2.在工程的build.gradle中添加依賴
compile'org.greenrobot:greendao:3.0.1'
compile'org.greenrobot:greendao-generator:3.0.0'

而且在build.gradle的頂部添加
apply plugin: 'org.greenrobot.greendao'

在android {}的最外大括號中加入
greendao {
schemaVersion 1
daoPackage 'com.example.greendao.gen'
targetGenDir 'src/main/java'
}

MyApp類session

public class MyApp extends Application {
private static MyApp app;
private DaoSession session;

@Override
public void onCreate() {
super.onCreate();
app=this;
setDb();
}

private void setDb() {
DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, "USER", null);
SQLiteDatabase database = helper.getReadableDatabase();
DaoMaster master = new DaoMaster(database);
session = master.newSession();

}

public static MyApp getApp(){
return app;
}
public DaoSession getDaose(){
return session;
}
}
在manifest → application 中添加name
<application
android:name=".app.MyApp"

User類
@Entity
public class User {
@Id
public long id;
@Property(nameInDb = "name")
public String name;}
寫完這些在User類中按住Ctrl+F9會自動生成GreenDao的三個幫助類

MainActivity類app

public class MainActivity extends AppCompatActivity implements View.OnClickListener{    private TextView tv;    private Button updata;    private Button delete;    private Button add;    private EditText ed2;    private EditText ed1;    private UserDao userDao;    private String a;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initView();        DaoSession daose = MyApp.getApp().getDaose();        userDao = daose.getUserDao();    }    private void initView() {        ed1 = (EditText)  findViewById(R.id.id_tv);        ed2 = (EditText) findViewById(R.id.id_name);        add = (Button) findViewById(R.id.add);        add.setOnClickListener(this);        delete = (Button) findViewById(R.id.delete);        delete.setOnClickListener(this);        updata = (Button) findViewById(R.id.updata);        updata.setOnClickListener(this);        tv = (TextView) findViewById(R.id.tv);    }    @Override    public void onClick(View view) {        switch (view.getId()){            case R.id.add:                a = ed1.getText().toString();                String name=ed2.getText().toString();                User user=new User(Long.valueOf(a),name);                userDao.insert(user);                Toast.makeText(MainActivity.this,"添加數據成功",Toast.LENGTH_LONG).show();                break;            case R.id.updata:                User user1 = userDao.load(Long.valueOf(a));                String name1=user1.getName();                tv.setText(name1);                break;            case R.id.delete:                break;        }    }}
相關文章
相關標籤/搜索