GreenDao

建立三個包 建立自己的gen

==============導入依賴和網絡權限==============

compile'org.greenrobot:greendao:3.0.1'
compile'org.greenrobot:greendao-generator:3.0.0'
<uses-permission android:name="android.permission.INTERNET"/>

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.1'
        classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
greendao {
    schemaVersion 1
    daoPackage 'dao.bwei.com.greendaostudy.gen'//*改成自己的包名
    targetGenDir 'src/main/java'
}
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao'

=============================MyAPP==============================

public class MyApp extends Application {
    private static  MyApp mInstance;
    private DaoSession daoSession;

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



    public static MyApp getmInstance(){
        return  mInstance;
    }

    private void setDb() {
        DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, "bw.db", null);
        SQLiteDatabase database = helper.getWritableDatabase();
        DaoMaster daoMaster = new DaoMaster(database);
        daoSession = daoMaster.newSession();


    }

    public DaoSession getDaoSessio(){
        return daoSession;
    }
}
=============================Bean==============================

@Entity
public class User {
    @Id
    private Long id;
    @Property(nameInDb = "name")
    private String name;

    @Generated(hash = 873297011)
    public User(Long id, String name) {
        this.id = id;
        this.name = name;
    }

    @Generated(hash = 586692638)
    public User() {
    }

    public Long getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

========================點擊Build MakeProject================

=========================MainActivity================================

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private UserDao userDao;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        DaoSession daoSessio = MyApp.getmInstance().getDaoSessio();
        userDao = daoSessio.getUserDao();
    }

    private void initView() {
        Button bt_add = (Button) findViewById(R.id.bt_add);
        Button bt_delete = (Button) findViewById(R.id.bt_delete);
        Button bt_updata = (Button) findViewById(R.id.bt_updata);
        Button bt_find = (Button) findViewById(R.id.bt_find);
        bt_add.setOnClickListener(this);
        bt_delete.setOnClickListener(this);
        bt_updata.setOnClickListener(this);
        bt_find.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {

        switch (view.getId()) {
            case R.id.bt_add:
                List<User> users = new ArrayList<>();
                User user1 = new User(Long.valueOf(5), "瑪麗黛佳");
                User user2 = new User(Long.valueOf(2), "倩碧");
                User user3 = new User(Long.valueOf(3), "雅詩蘭黛");
                User user4 = new User(Long.valueOf(4), "SKII");
                User user5 = new User(Long.valueOf(1), "雅頓");
                users.add(user1);
                users.add(user2);
                users.add(user3);
                users.add(user4);
                users.add(user5);
                for (int i=0;i<users.size();i++){
                    userDao.insert(users.get(i));
                }
                Toast.makeText(this, "添加數據成功", Toast.LENGTH_SHORT).show();


                break;
            case R.id.bt_delete:
                User useDelete = userDao.load(Long.valueOf(1));

                userDao.delete(useDelete);//刪除對象
                Toast.makeText(this, "刪除數據成功", Toast.LENGTH_SHORT).show();

                break;
            case R.id.bt_updata:
                User useUpdata = userDao.load(Long.valueOf(1));
                useUpdata.setName("蘭蔻");
                userDao.update(useUpdata);//更新對象
                break;
            case R.id.bt_find:
                //User useFind = userDao.load(Long.valueOf(1));//查詢對象
                //String name = useFind.getName();
                //Toast.makeText(this, "查詢數據成功:name" + name, Toast.LENGTH_SHORT).show();
                List<User> userList = userDao.loadAll();//查詢集合
                for (User userinfo : userList ) {
                    String userinfoName = userinfo.getName();
                    Toast.makeText(this, "查詢數據成功:userinfoName:" + userinfoName, Toast.LENGTH_SHORT).show();
                }
                break;
        }

    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章