一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用

demo下载

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第1张图片      一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第2张图片

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第3张图片   一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第4张图片

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第5张图片   一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第6张图片

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第7张图片   一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第8张图片

一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第9张图片   一行代码玩转android数据库之增删改查,超级简单 第三方框架xUtils改写 简单实用_第10张图片

话不多说,demo里有注释详细说明,粘贴到项目,导入jar包就可以用了

package com;

import java.util.ArrayList;
import java.util.List;

import com.db.DbHelper;
import com.db.R;
import com.db.adapter.MyAdapter;
import com.db.bean.People;
import com.db.view.DialogView;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;

/*
 * https://github.com/wyouflf/xUtils
 */
public class MyActivity extends Activity implements OnClickListener {

	private ListView listview;
	private MyAdapter adapter;
	private DbHelper dbHelper;
	private EditText etSelect;
	private List pList = new ArrayList();
	private People entity = null;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		findViewById(R.id.btn_create).setOnClickListener(this);
		findViewById(R.id.btn_select).setOnClickListener(this);
		findViewById(R.id.btn_searchdesc).setOnClickListener(this);

		findViewById(R.id.btn_selectname).setOnClickListener(this);
		findViewById(R.id.btn_selectlike).setOnClickListener(this);
		etSelect = (EditText) findViewById(R.id.et_select);
		listview = (ListView) findViewById(R.id.listview);

		dbHelper = DbHelper.getInstance(this);
	}

	@Override
	protected void onResume() {
		// TODO Auto-generated method stub
		super.onResume();
		// getData();// 造数据
		adapter = new MyAdapter(this, pList);
		listview.setAdapter(adapter);
		listview.setOnItemClickListener(new OnItemClickListener() {

			@Override
			public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
				// TODO Auto-generated method stub
				showAlertDialog(arg2);
			}
		});
		select();// 数据库查询所有数据
	}

	private void showAlertDialog(final int position) {
		final DialogView dialog = new DialogView(this, true, null);
		entity = pList.get(position);
		dialog.setMessage(entity.toString());
		dialog.setAddClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				// TODO Auto-generated method stub
				save();
				dialog.dismiss();
			}
		});
		dialog.setUpdateClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				addDialog(position);
				dialog.dismiss();
			}
		});
		dialog.setDeleteClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				delete(entity.getId());
				dialog.dismiss();
			}
		});
		dialog.show();
	}

	private void addDialog(int position) {
		entity = pList.get(position);
		final AlertDialog dialog = new AlertDialog.Builder(this).create();
		dialog.setView(LayoutInflater.from(this).inflate(R.layout.dialog_add, null));
		dialog.show();
		dialog.getWindow().setContentView(R.layout.dialog_add);
		Button btnPositive = (Button) dialog.findViewById(R.id.btn_submit);
		Button btnNegative = (Button) dialog.findViewById(R.id.btn_cancel);
		final EditText etContent = (EditText) dialog.findViewById(R.id.et_name);
		etContent.setText(entity.getName());
		btnPositive.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				String name = etContent.getText().toString().trim();
				if (DialogView.isNullEmptyBlank(name)) {
					etContent.setError("输入内如不能为空");
				} else {
					update(entity.getId(), name);
					dialog.dismiss();
				}
			}
		});
		btnNegative.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View arg0) {
				dialog.dismiss();
			}
		});
	}

	@Override
	public void onClick(View view) {
		switch (view.getId()) {
		case R.id.btn_create:
			create();
			break;
		case R.id.btn_select:
			select();
			break;
		case R.id.btn_searchdesc:
			searchDesc();
			break;
		case R.id.btn_selectname:
			String nameStr = etSelect.getText().toString().trim();
			if (0 < nameStr.length()) {
				selectName(nameStr);
			}
			break;
		case R.id.btn_selectlike:
			String nameLike = etSelect.getText().toString().trim();
			if (0 < nameLike.length()) {
				selectLike(nameLike);
			}
			break;
		}
	}

	// 增加
	private void save() {
		entity = new People();
		entity.setName("小雨");
		entity.setAge(25);
		entity.setSex("女");
		entity.setAddress("深圳");
		boolean isTrue = dbHelper.save(entity);
		if (isTrue) {
			searchDesc();
			showToast("添加成功");
		} else {
			showToast("添加失败");
		}
	}

	// 删除 根据id删除
	private void delete(int id) {
		boolean isTrue = dbHelper.deleteCriteria(People.class, "id", id);
		if (isTrue) {
			select();
			showToast("删除成功");
		} else {
			showToast("删除失败");
		}
	}

	// 修改 根据id修改name
	private void update(int id, String name) {
		entity = (People) dbHelper.searchOne(People.class, "id", id);
		entity.setName(name);
		boolean isTrue1 = dbHelper.update(entity, "name");
		if (isTrue1) {
			select();
			showToast("修改成功");
		} else {
			showToast("修改失败");
		}
	}

	// 根据条件name查询
	private void selectLike(String name) {
		pList.clear();
		pList = dbHelper.searchLike(People.class, "name", name);
		if (pList != null) {
			adapter.setUserEntities(pList);
		}
	}

	// 根据条件name查询
	private void selectName(String name) {
		pList.clear();
		entity = (People) dbHelper.searchOne(People.class, "name", name);
		if ((pList != null) && (entity != null)) {
			pList.add(entity);
			adapter.setUserEntities(pList);
		}
	}

	// 正叙 查询所有
	private void select() {
		pList.clear();
		pList = dbHelper.search(People.class);
		if (pList != null) {
			adapter.setUserEntities(pList);
		}
	}

	// 倒叙 查询所有
	private void searchDesc() {
		pList.clear();
		pList = dbHelper.searchDesc(People.class);
		if (pList != null) {
			adapter.setUserEntities(pList);
		}
	}

	// 创建 插入全部对象
	private void create() {
		boolean isTrue = dbHelper.saveAll(pList);
		if (isTrue) {
			showToast("创建成功");
		} else {
			showToast("创建失败");
		}
	}

	private void showToast(String name) {
		Toast.makeText(this, name, Toast.LENGTH_SHORT).show();
	}

	@Override
	protected void onStop() {
		// TODO Auto-generated method stub
		super.onStop();
		pList = null;
		entity = null;
	}

	// 造数据
	private void getData() {
		for (int i = 0; i < 1000; i++) {
			entity = new People();
			entity.setId(i);
			entity.setName("小明" + i);
			entity.setAddress("上海");
			entity.setAge(15 + i);
			entity.setSex("男");
			pList.add(entity);
		}
	}

}

demo下载


你可能感兴趣的:(Android,框架,android,数据存储)