- 浏览: 1099858 次
- 性别:
- 来自: 郑州
文章分类
最新评论
-
baiyi168:
非常有用,多谢楼主
Android中的一个TextView中的字体设置不同大小 -
qq271629261:
[img] ...
android开发工具 Eclipse+Android SDK+ADT -
txlong_onz:
haotainan 写道Activity伪造Dialog,这个 ...
Activity伪造Dialog的时候不能全屏显示 -
haotainan:
Activity伪造Dialog,这个Dialog显示的时候界 ...
Activity伪造Dialog的时候不能全屏显示 -
gangbener:
cainingyouyou 写道7楼的,tag,怎么解决的啊1 ...
android中ListView点击和里边按钮或ImageView点击不能同时生效问题解决
4、编写数据库操作的代码
4.1、编写简单的pojo类
package com.jftt.pojo; public class WebSite { private int ws_id; private String ws_name; private String ws_url; public WebSite( String string, String string2) { this.ws_name=string; this.ws_url=string2; } public WebSite(int wid, String string, String string2) { this.ws_id=wid; this.ws_name=string; this.ws_url=string2; } public int getWs_id() { return ws_id; } public void setWs_id(int wsId) { ws_id = wsId; } public String getWs_name() { return ws_name; } public void setWs_name(String wsName) { ws_name = wsName; } public String getWs_url() { return ws_url; } public void setWs_url(String wsUrl) { ws_url = wsUrl; } } package com.jftt.pojo; public class City { private int c_id; private String c_name; private String c_pic; public City(String cname,String cpic){ this.c_name=cname; this.c_pic=cpic; } public City(int cid,String cname,String cpic){ this.c_id=cid; this.c_name=cname; this.c_pic=cpic; } public int getC_id() { return c_id; } public void setC_id(int cId) { c_id = cId; } public String getC_name() { return c_name; } public void setC_name(String cName) { c_name = cName; } public String getC_pic() { return c_pic; } public void setC_pic(String cPic) { c_pic = cPic; } } package com.jftt.pojo; public class City_Web { private int cw_id; private int c_id; private int w_id; public City_Web(int cid,int wid){ this.c_id=cid; this.w_id=wid; } public int getCw_id() { return cw_id; } public void setCw_id(int cwId) { cw_id = cwId; } public int getC_id() { return c_id; } public void setC_id(int cId) { c_id = cId; } public int getW_id() { return w_id; } public void setW_id(int wId) { w_id = wId; } }
4.2、编写数据库辅助类DBHelper.java
package com.jftt.service; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.util.Log; public class DBHelper extends SQLiteOpenHelper { private static final String DB_NAME="jftt"; private static final int VERSION=1; public DBHelper(Context context){ super(context,DB_NAME,null,VERSION); } @Override public void onCreate(SQLiteDatabase db) { String sql="create table city(c_id integer primary key autoincrement,c_name varchar(30),c_pic varchar(30))"; String sql2="create table website(ws_id integer primary key autoincrement,ws_name varchar(30),ws_url varchar(30))"; String sql3="create table cw(cw_id integer primary key autoincrement,c_id integer,w_id integer)"; Log.e("tag","::"); db.execSQL(sql); Log.e("tag","123"); db.execSQL(sql3); db.execSQL(sql2); } @Override public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) { db.execSQL("drop table if exists person"); onCreate(db); } }
4.3、编写数据库操作的类
package com.jftt.service; import java.util.ArrayList; import java.util.List; import com.jftt.FlipperDemo; import com.jftt.pojo.City; import com.jftt.pojo.City_Web; import com.jftt.pojo.WebSite; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.util.Log; public class DBManager { private static DBHelper dbHelper; private Context context; private static SQLiteDatabase db; public DBManager(Context context) { this.context = context; dbHelper = new DBHelper(context); } /* 批量插入网站 */ public static void insertWebSite(WebSite[] websites) { String sql = "insert into website(ws_name,ws_url)values(?,?)"; db = dbHelper.getWritableDatabase(); for (int i = 0; i < websites.length; i++) { db.execSQL(sql, new Object[] { websites[i].getWs_name(), websites[i].getWs_url() }); } db.close(); } /* cw 批量插入cws */ public static void insertCws(City_Web[] c_web) { String sql = "insert into cw(c_id,w_id)values(?,?)"; db = dbHelper.getWritableDatabase(); for (int i = 0; i < c_web.length; i++) { db.execSQL(sql, new Object[] { c_web[i].getC_id(), c_web[i].getW_id() }); } db.close(); } /* city 批量插入 */ public static void insertCities(City[] cities) { String sql = "insert into city(c_name,c_pic)values(?,?)"; db = dbHelper.getWritableDatabase(); for (int i = 0; i < cities.length; i++) { db.execSQL( sql, new Object[] { cities[i].getC_name(), cities[i].getC_pic() }); } db.close(); } /* 删除城市 */ public static void deleteCity(Integer... ids) { StringBuffer sb = new StringBuffer(); if (ids.length > 0) { for (Integer id : ids) { sb.append('?').append(','); } sb = sb.deleteCharAt(sb.length() - 1); } db = dbHelper.getWritableDatabase(); db.execSQL("delete from city where c_id in(" + sb + ")", (Object[]) ids); db.close(); } /* * find city id by web ide 根据网站id查找所有城市ID列表 */ public static List<Integer> findCityIdByWebID(int wid) { List<Integer> array = new ArrayList<Integer>(); db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select * from cw where w_id=?", new String[] { String.valueOf(wid) }); while(cur.moveToNext()) { array.add(cur.getInt(1)); } Log.e("myTag", array.size()+""); return array; } /* * find city names by ids 根据IDs查找全部城市 返回符合要求的城市名称集合 */ public static List<String> findCitiesByIDs(List<Integer> cids) { List<String> cityNames = new ArrayList<String>(); db = dbHelper.getWritableDatabase(); for (int i = 0; i < cids.size(); i++) { Cursor cur = db.rawQuery("select * from city where c_id=?", new String[] { String.valueOf(cids.get(i)) }); if (cur.moveToNext()) { cityNames.add(cur.getString(1)); } } return cityNames; } /* * find website by id 根据id查找网站 返回网站Website */ public static WebSite findByID(int wid) { WebSite person = null; db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select * from website where ws_id=?", new String[] { String.valueOf(wid) }); if (cur.moveToNext()) { person = new WebSite(wid, cur.getString(1), cur.getString(2)); return person; } return null; } /* * find city by id 根据ID查找城市 */ public static City findCityByID(int cid) { City city = null; db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select * from city where c_id=?", new String[] { String.valueOf(cid) }); if (cur.moveToNext()) { city = new City(cid, cur.getString(1), cur.getString(2)); return city; } return null; } /* * find pic by city name 根据城市名称查找图片名称 */ public static String findCityPicByCityName(String cname) { db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select * from city where c_name=?", new String[] { String.valueOf(cname) }); if (cur.moveToNext()) { return cur.getString(2); } return null; } /* * find all cities 查找所有城市 返回所有城市名称集合 */ public static List<String> findAllCities() { List<String> cities = new ArrayList<String>(); db = dbHelper.getReadableDatabase(); Cursor cur = db.rawQuery("select * from city ", null); while (cur.moveToNext()) { cities.add(cur.getString(1)); } return cities; } /* get the number of all the city record */ public static int getCityCount() { db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select count(*) from city", null); if (cur.moveToNext()) { return cur.getInt(0); } return 0; } /* get the number of all the web record */ public static int getWebCount() { db = dbHelper.getWritableDatabase(); Cursor cur = db.rawQuery("select count(*) from website", null); if (cur.moveToNext()) { return cur.getInt(0); } return 0; } /* get the number of all the cw record */ public static int getCwCount() { db = dbHelper.getWritableDatabase(); // Cursor cur = db.rawQuery("select count(*) from cw", null); // if (cur.moveToNext()) { // return cur.getInt(0); // // } return 0; } }5、部分简单文件没有上传,可以自己实现。
- FlipperDemo.rar (2.2 MB)
- 下载次数: 290
发表评论
-
安卓自动编译工具Gradle
2015-09-02 15:15 1129https://developer.android.com ... -
图片的水平平铺效果
2014-03-10 15:45 2444Android要实现图片的水平平铺效果: 很简单也很强大, ... -
LinearLayout中的属性baselineAligned的使用
2013-10-19 18:54 34415Android线性布局中的属性主要的就是控制浮动方向的or ... -
Activity伪造Dialog的时候不能全屏显示
2013-05-31 08:42 14266使用Activity伪造Dialog的时候出现不能全屏的问 ... -
修改局部源码烧录手顺
2012-08-16 09:23 21391. 添加命令到PATH路径下,方便全局使用: andro ... -
备份我的源码烧录的sh文件
2012-07-16 10:39 1380烧录编译的img文件: 01.tofastboot.sh ... -
备份我的源码编译的sh文件
2012-07-16 10:34 1603编译命令写一次就可以了。以后直接使用。 01-extra_s ... -
ADT20安装报错
2012-06-29 23:44 9232Cannot complete the install bec ... -
ubuntu12.04(VirtualBox) 64-bit build android source
2012-05-20 17:33 30421.download VirtalBox(Virtual ... -
搭建android源码编译开发服务器
2012-05-20 17:32 73501.android服务器,其实也就是台式机器的增强版本。基本上 ... -
ADT离线安装报错
2012-04-23 09:37 3397最近使用ADT的离线zip包安装ADT总是报错。说是 Can ... -
Android源码编译中的Makefile文件
2012-04-18 09:09 25561.和大多shell文件一样,makefile中的#表示注释, ... -
遍历android根目录的简单资源查看器
2012-04-16 17:02 3771效果如图: package com.txl.sua; ... -
Nexus s与android4.0
2011-12-14 13:15 14391.内核源码链接 http://android.git.ke ... -
Android编译生成系统-译文
2011-12-08 11:21 3534生成 4.0.1 系统 下边 ... -
Android中设置TextView的颜色setTextColor
2011-11-10 11:34 182368android中设置TextView的颜色有方法setTex ... -
Android中设置activity的background为Wallpaper
2011-08-15 08:34 3904<activity android:name=&q ... -
android程序中怎么实现平铺效果
2011-08-10 17:06 4931很简单,就像window桌面图片一样,如果图片小的话就会平铺。 ... -
一个android应用向Home screen添加多个Widget
2011-08-09 15:12 5137如Twitter客户端或者HTC的日历应用,可以添加大小不 ... -
怎么实现Widget中的动画效果,如渐入等
2011-08-09 11:22 3105怎么在Widget中添加animation,如渐入渐出,淡入淡 ...
相关推荐
在这个"Android SQLite数据库操作Demo"中,我们将探讨如何在Android应用中创建、查询、更新和删除SQLite数据库的数据。 1. **数据库初始化** 在Android中,我们通常通过扩展SQLiteOpenHelper类来初始化SQLite...
在这个"android Sqlite数据库操作demo"中,我们可以深入理解如何在Android应用中进行SQLite的增删改查操作。 首先,我们需要在Android项目中创建一个SQLite数据库。这通常通过继承SQLiteOpenHelper类来实现。...
本篇将基于一个名为"Android SQLite数据库操作demo"的示例项目,探讨如何在Android中进行SQLite数据库的相关操作。原作者的博客地址为http://blog.csdn.net/liuhe688/article/details/6715983。 首先,我们来看一下...
本`android sqlite操作 demo`提供了关于如何在Android应用中使用SQLite进行数据操作的示例。 SQLite在Android中的使用通常包括以下几个步骤: 1. **创建数据库**: 首先,我们需要创建一个SQLite数据库。这通常是...
在Demo中,可能使用了`AsyncTask`来封装数据库操作。 6. **Android Studio集成**: 使用Android Studio可以方便地管理SQLite数据库。可以借助SQLite Database Browser插件查看和编辑数据库内容,或者使用Android ...
本文将详细讲解如何在Android项目中进行SQLite数据库的升级,结合提供的"android sqlite的升级demo"来深入理解这一过程。 首先,我们需要明白SQLite数据库的版本管理。在Android中,每个SQLite数据库都有一个关联的...
在实际开发中,我们还需要考虑线程安全、事务处理、错误处理等更复杂的情况,但这些基本操作是理解SQLite在Android应用中的运用的基础。通过实践和学习,开发者可以熟练掌握SQLite的使用,为应用提供高效、可靠的...
本教程将详细讲解如何在Android环境中进行SQLite数据库的操作,包括创建数据库、创建表、插入数据、查询数据以及更新和删除数据。 首先,创建SQLite数据库在Android中通常是在`SQLiteOpenHelper`的子类中完成的。`...
本篇将基于提供的"android存取Sqlite3数据库demo"进行详细的解析,帮助你快速掌握如何在Android应用中操作SQLite3数据库。 首先,我们来看看SQLite在Android中的基本使用步骤: 1. **创建数据库**: 在Android中...
这个"SQLite数据库操作demo"旨在提供一个基础的示例,帮助初学者了解如何在Android环境中进行SQLite数据库的创建、查询、更新和删除等基本操作。 首先,Android中的SQLite数据库操作通常涉及以下步骤: 1. **创建...
SQlite开发的完整demo,功能有: 1,建了一个表,结构是id+姓名 2,可以删除 增加 更新记录 3,解决了Android的SQlite先天不足:删除 插入后主键不能自动排序的问题 4,在数据库主界面,有“选定”按钮,点此后切换...
在"android sqlite数据库 demo code"中,我们可以看到一个简单的Android应用示例,该示例演示了如何使用SQLite数据库进行数据的增删改查操作。下面将详细介绍这些关键知识点: 1. **SQLiteOpenHelper**: 这是...
在本示例"android基本SQLite数据库操作的增删改查demo"中,开发者创建了一个用于管理停车位查询的应用,其中涉及到了对SQLite数据库的基础操作:增加数据(Add)、查询数据(Query)、删除数据(Delete)以及修改...
7. **编译与链接**:DEMO中可能包含编译和链接SQLite3库的步骤,如`-lsqlite3`链接选项的使用。 通过研究这个DEMO,开发者可以掌握SQLite3的基本用法,包括数据库的打开和关闭、SQL语句的执行、数据的读写等核心...
这个"android sqlite3 demo"是一个完整的示例项目,旨在帮助初学者理解如何在Android应用中有效地使用SQLite3进行数据的增删改查操作。 首先,我们来了解一下SQLite3在Android中的基本用法。在Android应用中,...
本教程将通过一个名为"AndroidDemo_008"的项目示例,详细讲解如何在Android上使用SQLite数据库进行基本的增删查改操作。 首先,我们需要在Android项目中添加SQLite的支持。在`build.gradle`文件中,确保你已经包含...