安卓项目-利用Sqlite数据库,开发新闻发布系统
本教程致力于程序员可以快速的学习安卓移动端手机开发。
适合于已经习得一种编程语言的同仁。
更多志同道合,想要学习更多编程技术的大神们。
小弟不才,麻烦关注一下我的今日头条号-做全栈攻城狮。
本文章是基于上篇文章基础之上进行深入学习的。程序员带你学习安卓开发-XML文档的创建与解析
Sqlite数据库:
Sqlite数据库是在安卓中使用较广泛的数据库。其为简单、轻巧的Sql类文件型数据库。因以简单的文本形式保存,所以安全性不是很高。只要拿到sqlite数据库文件就可以得到数据。所以这就决定了sqlite数据库不宜保存较为隐私重要的数据。
为了方便的编辑Sqlite数据库,我们这边使用一个Sqlite数据库可视化工具。Navicat Premium。
我这里找到一个比较不错的版本。分享给你。下载地址:https://yunpan.cn/cM9wzNM4KefD8 访问密码 6a40 软件安装很简单。一步一步下一步就安装成功了。安装成功打开如图:
Naviate:可以链接绝大都数数据库引擎,并且操作简单,支持强大的代码智能提示等。推荐大家使用。
一、Naviate 软件使用
1.创建Sqlite数据库:
配置数据库相关数据
链接名是左边项目显示的名称,可以自定义。这时我们发现,在桌面生成了一个first.db的文件。
没错的了,这就是sqlite的数据库文件。所有的数据都是保存在这个文件中的。
2.打开现有数据库文件:
打开链接即可打开成功。
3.我们可以初始化数据库结构和数据,例如:
3.1添加News表
CREATE TABLE "News" (
"Id" INTEGER NOT NULL,
"Title" TEXT,
"Content" TEXT,
PRIMARY KEY ("Id")
);
3.2初始化数据:
在这里只添加两行数据加入:News:
INSERT INTO "News" VALUES ('1', '英语四级高频词汇,纯干货,收藏', '1.alter [''ɔ:ltə] v. 改变,改动,变更2.burst [''bə:ðən] vi.,n. 突然发生,爆裂3.dispose [dis''pəuz] vi. 除掉;处置;解决;处理(of)4.blast [blɑ:st] n. 爆炸;气流 vi. 炸,炸掉5.consume [kən''sju:m] v. 消耗,耗尽作者:头条号 / 做全栈攻城狮');
INSERT INTO "News" VALUES ('2', '推荐几个对Asp.Net开发者比较实用的工具 2', '推荐几个对Asp.Net开发者比较实用的工具。大家有相关工具也可以在评论区留言,一起努力学习。
作为程序员要有挑战精神,大家可以尝试一下这些工具。');
其实和原生的sql语法差不多的啦。随便看看,对于你来说应该问题不大。
二、使用Android代码操作数据库:
1.我们继续做一个新闻发布管理系统:
前台界面效果,很简单的布局操作的。这边我贴一下我的布局,供以参考。
2.Sqlite数据库操作:
2.1在onCreate方法中初始化控件:
private EditText editTitle;
private EditText editContent;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTitle = (EditText) findViewById(R.id.editTitle);
editContent = (EditText) findViewById(R.id.editContent);
}
2.2“保存”按钮绑定后台save方法,获取用户输入的新闻信息:
2.2.1 用户输入信息预处理:
public void save(View v)
{
String title = editTitle.getText().toString().trim();
String content = editContent.getText().toString().trim();
if (TextUtils.isEmpty(title)||TextUtils.isEmpty(content))
{
Toast.makeText(MainActivity.this, "信息填写不完整", Toast.LENGTH_SHORT).show();
return;
}
}
3. 将用户输入的新闻信息保存到数据库:
3.1 新建NewsSqliteHelper 继承自 SQLiteOpenHelper。用以维护和创建数据库。
3.2创建News对象,对应News表:
3.3 新建操作News表的Dao操作类:
因新闻发布系统,目前只能进行增加新闻,暂时先创建一个添加数据的方法。下节文章讲解:新闻列表展示功能。
3.4 保存数据到数据库:
News news = new News();
news.setTitle(title);
news.setContent(content);
NewsDao dao = new NewsDao(MainActivity.this);
dao.add(news);
Toast.makeText(MainActivity.this, "添加成功", Toast.LENGTH_SHORT).show();
4.最终效果
我们通过Android Device Monitor。把生成的数据库文件导出。
打开Android Device Monitor:
找到数据库文件导出:
用Naviate查看一下数据库数据。
至此一个简单的新闻发布系统完成。下节讲解利用Sqlite进行“新闻显示系统”
请点击关注,获取最新教程
今日头条-做全栈攻城狮。
QQ技术交流群号码:538742639
安卓项目-利用Sqlite数据库,开发新闻发布系统的更多相关文章
- 使用JSP/Servalet技术开发新闻发布系统------动态网页开发基础
什么是动态网页? 动态网页是指在服务器端运行的程序或者网页,它们会随不同客户.不同时间,返回不同的网页. 动态网页的特点? (1).交互性:即网页会根据用户的要求和选择而动态改变和响应.采用动态网页技 ...
- 使用JSP/Servlet技术开发新闻发布系统---Servlet基础
Servlet简介 什么是Servlet 其实就是一个类,主要负责处理用户的请求和做到数据的相应以及页面的跳转,基于Java技术的Web组件 Servlet API Servlet接口 Servlet ...
- 使用JSP/Servlet技术开发新闻发布系统---JSP数据交互(二)
JSP内置对象application application对象 JSP常用的内置对象 对象的作用域 作用的分类 对象的作用域 page作用域 实例 //页面1 <% String name = ...
- 第一章使用JSP/Server技术开发新闻发布系统第一章动态网页开发基础
一:为什么需要动态网页 由于静态网页的内容是固定的,不能提供个性化和定制化得服务,使用动态网页可真正地与用户实现互动. 二:什么是动态网页 ①:动态网页是指在服务器端运行的,使用程序语言设 ...
- 使用JSP/Servalet技术开发新闻发布系统------JSP数据交互一
什么是内置对象 JSP内置对象是 Web 容器创建的一组对象,不用通过手动new就可以使用 JSP中的九大内存对象 request 请求对象 response 响应对象 out 输出对象 ...
- Visual Studio下SQLite数据库开发环境设置
由于我们介绍的内容都是基于微软的Visual Studio下开发的Win32平台,所以下边我们介绍Visual Studio下SQLite数据库开发环境设置.具体而言我们有两种方式可以在Visual ...
- Andorid SQLite数据库开发基础教程(3)
Andorid SQLite数据库开发基础教程(3) 数据库生成方式 数据库的生成有两种方式,一种是使用数据库管理工具生成的数据库,我们将此类数据库称为预设数据库,另一种是使用代码生成的数据库. 使用 ...
- Andorid SQLite数据库开发基础教程(2)
Andorid SQLite数据库开发基础教程(2) 数据库生成方式 数据库的生成有两种方式,一种是使用数据库管理工具生成的数据库,我们将此类数据库称为预设数据库,另一种是使用代码生成的数据库.
- DRP PK 牛腩新闻发布系统
一.JSP与ASP (1)Web服务器的支持:大多数通用的Web服务器如:Apache.Netscape和Microsoft IIS都支持JSP页面,只有微软本身的Microsoft IIS和Pers ...
随机推荐
- BZOJ1334: [Baltic2008]Elect
1334: [Baltic2008]Elect Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 386 Solved: 201[Submit][Sta ...
- Master Nginx(5) - Reverse Proxy Advanced Topics
Security through separtion Encrypting traffic with SSL Authenticating clients using SSL Blocking tra ...
- win7 64位 VS2010调试提示“ORA-12154: TNS: 无法解析指定的连接标识符”的解决方法
这个问题刚刚遇到,花了半小时,记录下 环境: vs2010[32位] oracle 10g[32位] 操作系统:windows 7 64位 解决步骤: 1.去网上下载“instantclient- ...
- [转]ASP.NET MVC 入门7、Hellper与数据的提交与绑定
ASP.NET MVC提供了很多Hellper的方法,Hellper就是一些生成HTML代码的方法,方便我们书写HTML代码(有一部分的朋友更喜欢直接写HTML代码).我们也可以利用.NET 3.5的 ...
- [codevs3295]落单的数
题目描述 Description 有n个数(n是奇数),其中n-1个数两两成对,有1个数落单,找出这个数.要求O(n)的时间复杂度,O(1)的空间复杂度 输入描述 Input Description ...
- Excel中VBA 连接 数据库 方法- 摘自网络
Sub GetData() Dim strConn As String, strSQL As String Dim conn As ADODB.Connection Dim ds As ADODB.R ...
- ASIHTTPRequest 中url参数中文乱码
ASIHTTPReques确实是在开发过程中,数据的传输,获取方面给我们很大的帮助.然而在一些方面也是需要一些的注意. 在我们使用ASIHTTPReques 进行get方式获取数据时,如果需要传入中文 ...
- linux下查询域名或IP注册信息的操作记录(whois)
在运维工作中,有时需要查询某些域名的注册信息(域名的NS,注册用户,注册邮箱等),可以使用whois这个命令.whois命令令用来查找并显示指定帐号(或域名)的用户相关信息,因为它是到Network ...
- 四、XML映射配置文件
MyBatis的XML配置文件包含了影响MyBatis行为甚深的设置和属性信息.XML文档的高层级结构如下: ----configuration配置 --------properties属性 ---- ...
- int 指令
int n 也就是中断操作->根据中断类型码来查找中断向量表(中断向量表在0-3ffh这个内存空间) 调用int n 也就操作了下面的步骤 1)取中断类型码n: 2)标志寄存器入栈,IF=0,T ...