Anroid——第三方数据库SQLite——SQLiteOpenHelper+SQLiteDatabase
来源:互联网 发布:820空心杯淘宝 编辑:程序博客网 时间:2024/06/05 02:18
Anroid——第三方数据库SQLite——SQLiteOpenHelper+SQLiteDatabase
<span style="font-size:18px;">package com.example.jreduch08.DataBaseHelpp;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import com.j256.ormlite.android.apptools.OrmLiteSqliteOpenHelper;import com.j256.ormlite.dao.Dao;import com.j256.ormlite.support.ConnectionSource;import com.j256.ormlite.table.TableUtils;import java.sql.SQLException;import java.util.HashMap;import java.util.Map;public class DatabaseHelper extends OrmLiteSqliteOpenHelper { private static final String TABLE_NAME = "ormtest.db"; private Map<String, Dao> daos = new HashMap<String, Dao>(); private static DatabaseHelper instance; private DatabaseHelper(Context context) { super(context, TABLE_NAME, null, 1); } @Override public void onCreate(SQLiteDatabase database, ConnectionSource connectionSource) { try { TableUtils.createTable(connectionSource, User.class); } catch (SQLException e) { e.printStackTrace(); } } @Override public void onUpgrade(SQLiteDatabase database, ConnectionSource connectionSource, int oldVersion, int newVersion) { try { TableUtils.dropTable(connectionSource, User.class, true); onCreate(database, connectionSource); } catch (SQLException e) { e.printStackTrace(); } } /** * 单例获取该Helper * * @param context * @return */ public static synchronized DatabaseHelper getHelper(Context context) { context = context.getApplicationContext(); if (instance == null) { synchronized (DatabaseHelper.class) { if (instance == null) { instance = new DatabaseHelper(context); } } } return instance; } public synchronized Dao getDao(Class clazz) throws SQLException { Dao dao = null; String className = clazz.getSimpleName(); if (daos.containsKey(className)) { dao = daos.get(className); } if (dao == null) { dao = super.getDao(clazz); daos.put(className, dao); } return dao; } /** * 释放资源 */ @Override public void close() { super.close(); for (String key : daos.keySet()) { Dao dao = daos.get(key); dao = null; } }} </span>
<span style="font-size:18px;">package com.example.jreduch08.DataBaseHelpp;import com.j256.ormlite.field.DatabaseField;import com.j256.ormlite.table.DatabaseTable;/** * Created by 冲天之峰 on 2016/8/23. */@DatabaseTable (tableName = "user")//表名public class User { @DatabaseField(id=true) //主键private String userId; @DatabaseField //(columnName = "userName") private String name; @DatabaseField private int age; public User(){} public User(String userId, String name, int age) { this.userId = userId; this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getUserId() { return userId; } public String setUserId(String userId) { this.userId = userId; return userId; } public int getAge() { return age; } public void setAge(int age) { this.age = age; }}</span>
<span style="font-size:18px;">package com.example.jreduch08.DataBaseHelpp;import android.content.Context;import com.j256.ormlite.dao.Dao;import java.sql.SQLException;import java.util.List;/** * Created by 冲天之峰 on 2016/8/23. */public class UserDaoOrm { private Context context; private Dao<User,Integer> userDao; private DatabaseHelper helper; public UserDaoOrm(Context context){ this.context=context; helper=DatabaseHelper.getHelper(context); try { userDao=helper.getDao(User.class); } catch (SQLException e) { e.printStackTrace(); } } public void add(User user){ try { userDao.createOrUpdate(user); } catch (SQLException e) { e.printStackTrace(); } } //查询全部 public List<User> select() { try { return userDao.queryForAll(); } catch (SQLException e) { e.printStackTrace(); }return null; } public void delete(User user){ try { userDao.delete(user); } catch (SQLException e) { e.printStackTrace(); } } public User selectUser(String id){ try { return userDao.queryBuilder().where() .eq("userId",id) .queryForFirst(); } catch (SQLException e) { e.printStackTrace(); }return null; }}</span>
<span style="font-size:18px;">package com.example.jreduch08.DataBaseHelpp;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.Spinner;import android.widget.TextView;import android.widget.Toast;import com.example.jreduch08.R;import java.util.ArrayList;import java.util.List;public class UserDaoTestActivity extends AppCompatActivity { private EditText name,age,userId; private Button button1,button2,button4,button5,button6; private TextView tv; private Spinner sp; private UserDaoOrm userDaoOrm; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_user_dao_test); name= (EditText) findViewById(R.id.name); age= (EditText) findViewById(R.id.age); userId= (EditText) findViewById(R.id.userId); button1= (Button) findViewById(R.id.button1); button2= (Button) findViewById(R.id.button2); button6= (Button) findViewById(R.id.button6); button4= (Button) findViewById(R.id.button4); button5= (Button) findViewById(R.id.button5); sp= (Spinner) findViewById(R.id.sp); tv= (TextView) findViewById(R.id.tv); userDaoOrm=new UserDaoOrm(this); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { User user=new User(); user.setUserId(userId.getText().toString()); user.setName(name.getText().toString()); user.setAge(Integer.parseInt(age.getText().toString())); userDaoOrm.add(user); Toast.makeText(getBaseContext(),"新增成功",Toast.LENGTH_SHORT).show(); } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { List<User> list=userDaoOrm.select(); String text=""; List myData=new ArrayList(); for (User u:list){ myData.add(u.getUserId()+":"+u.getName()+":"+u.getAge()); text=text+u.getUserId()+":"+u.getName()+":"+u.getAge()+"\n"; } ArrayAdapter aa=new ArrayAdapter(getBaseContext(),android.R.layout .simple_list_item_1,myData); sp.setAdapter(aa); tv.setText(text); } }); button4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { User user=new User(); user.setUserId(userId.getText().toString()); user.setName(name.getText().toString()); user.setAge(Integer.parseInt(age.getText().toString())); userDaoOrm.delete(user); Toast.makeText(getBaseContext(),"删除成功",Toast.LENGTH_SHORT).show(); } }); button5.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { User user=new User(); String id=""; id= userId.getText().toString(); tv.setText(userDaoOrm.selectUser(id).getUserId()+":"+userDaoOrm.selectUser(id).getName()+ ":"+userDaoOrm.selectUser(id).getAge()); user=userDaoOrm.selectUser(id); name.setText(user.getName().toString()); age.setText(user.getAge()+""); Toast.makeText(getBaseContext(),"查询一个成功",Toast.LENGTH_SHORT).show(); } }); button6.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(!userId.getText().toString().equals("")){ User u=new User(); u.setUserId(userId.getText().toString()); userDaoOrm.delete(u); Toast.makeText(getBaseContext(), "删除一个成功", Toast.LENGTH_SHORT).show(); } } }); }}</span>
0 0
- Anroid——第三方数据库SQLite——SQLiteOpenHelper+SQLiteDatabase
- Anroid——数据库SQLite——SQLiteOpenHelper+SQLiteDatabase
- Android SQLite数据库—SQLiteOpenHelper(一)
- Android SQLite数据库—SQLiteOpenHelper(二)
- 【android】SQLite数据库之SQLiteOpenHelper与SQLiteDatabase
- Android——使用SQLiteDatabase操作SQLite数据库
- Android:嵌入式关系型SQLite数据库、SQLiteOpenHelper、SQLiteDatabase、事务
- Android中SQLite数据库操作(2)——使用SQLiteDatabase提供的方法操作数据库
- android4————SQLiteOpenHelper SQLiteDatabase ContentProvider三者的关系
- Android学习笔记(12)————利用SQLiteOpenHelper来管理SQLite数据库
- Android学习笔记(6)————利用SQLiteOpenHelper管理SQLite数据库
- Android学习笔记(12)————利用SQLiteOpenHelper来管理SQLite数据库 .
- Android本地数据存储之SQLite关系型数据库 ——SQLiteDatabase
- Android本地数据存储之SQLite关系型数据库 ——SQLiteDatabase
- Android中SQLite数据库操作(2)——SQLiteOpenHelper类
- Android对SQLite的"增删改查"——SQLiteDatabase
- Android中的SQLite SQLiteOpenHelper SQLiteDatabase及其例子
- Android之SQLite开发(2)—SQLiteOpenHelper类
- 汉诺塔问题
- java中负值byte b=0xffffff9c占用多少空间,jvm会自动拉长为int吗?
- PHP empty、isset、isnull的区别
- ZooKeeper的数据结构模型和特点
- JSON文本转化成javascript对象
- Anroid——第三方数据库SQLite——SQLiteOpenHelper+SQLiteDatabase
- Java利用Zxing生成二维码
- sys.database_principals (Transact-SQL) 从SQL SERVER数据库中查询安全主体
- view的setTag() 和 getTag()应用
- Java系统中时间封装处理
- Sublime Text 格式化代码
- ZooKeeper客户端Curator使用一 创建连接
- SpringMVC:Maven构建SpringMVC简单配置(JavaConfig版)
- 图结构练习——BFSDFS——判断可达性