android商品mysql_android使用mysql的方法总结
Android可以使用mysql数据库,android连接数据库的方式有两种。
第一种是通过连接服务器,再由服务器读取数据库来实现数据的增删改查,这也是我们常用的方式。
第二种方式是android直接连接数据库,这种方式非常耗手机内存,而且容易被反编译造成安全隐患,所以在实际项目中不推荐使用。
1.加载外部jar包
在Android工程中要使用jdbc的话,要导入jdbc的外部jar包,因为在java的jdk中并没有jdbc的api,我使用的jar包是mysql-connector-Java-5.1.18-bin.jar包,网络上有使用mysql-connector-java-5.1.18-bin.jar包的,自己去用的时候发现不兼容,所以下载了比较新版本的,jar包可以去官网下载,也可以去百度,有很多前人们上传的。
2.导入jar包的方式
方式一:
可以在项目的build.gradle文件中直接添加如下语句导入 compile files('libs/mysql-connector-java-5.1.18-bin.jar')
方式二:下载jar包复制到项目的libs目录下,然后右键复制过来的jar包Add as libs
三.建立数据库连接 protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_jdbc);
new Thread(runnable).start();
}
Handler myHandler=new Handler(){
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
Bundle data=new Bundle();
data=msg.getData();
//System.out.println("id:"+data.get("id").toString()); //输出第n行,列名为“id”的值
Log.e("TAG","id:"+data.get("id").toString());
TextView tv= (TextView) findViewById(R.id.jdbc);
//System.out.println("content:"+data.get("content").toString());
}
};
Runnable runnable=new Runnable() {
private Connection con = null;
@Override
public void run() {
// TODO Auto-generated method stub
try {
Class.forName("com.mysql.jdbc.Driver");
//引用代码此处需要修改,address为数据IP,Port为端口号,DBName为数据名称,UserName为数据库登录账户,Password为数据库登录密码
con =
//DriverManager.getConnection("jdbc:mysql://192.168.1.202:3306/b2b", "root", "");
DriverManager.getConnection("jdbc:mysql://http://192.168.1.100/phpmyadmin/index.php:8086/b2b",
UserName,Password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
testConnection(con); //测试数据库连接
} catch (java.sql.SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void testConnection(Connection con1) throws java.sql.SQLException {
try {
String sql = "select * from ecs_users"; //查询表名为“oner_alarm”的所有内容
Statement stmt = con1.createStatement(); //创建Statement
ResultSet rs = stmt.executeQuery(sql); //ResultSet类似Cursor
//ResultSet
最初指向第一行
Bundle bundle=new Bundle();
while (rs.next()) {
bundle.clear();
bundle.putString("id",rs.getString("userid"));
//bundle.putString("content",rs.getString("content"));
Message msg=new Message();
msg.setData(bundle);
myHandler.sendMessage(msg);
}
rs.close();
stmt.close();
} catch (SQLException e) {
} finally {
if (con1 != null)
try {
con1.close();
} catch (SQLException e) {}
}
}
};
注意:
在Android4.0之后,不允许在主线程中进行比较耗时的操作(连接数据库就属于比较耗时的操作),需要开一个新的线程来处理这种耗时的操作,没新线程时,一直就是程序直接退出,开了一个新线程处理直接,就没问题了。
当然,连接数据库是需要网络的,千万别忘了添加访问网络权限:
四.bug点
1.导入的jar包一定要正确
2.连接数据库一定要开启新线程
3.数据库的IP一定要是可以ping通的,局域网地址手机是访问不了的
4.数据库所在的服务器是否开了防火墙,阻止了访问
android商品mysql_android使用mysql的方法总结相关推荐
- android json mysql_Android通过json向MySQL中读写数据的方法详解【写入篇】
本文实例讲述了Android通过json向MySQL中写入数据的方法.,具体如下: 先说一下如何通过json将Android程序中的数据上传到MySQL中: 首先定义一个类JSONParser.Jav ...
- android json mysql_Android通过json向MySQL中读写数据的方法详解【读取篇】
本文实例讲述了Android通过json向MySQL中读取数据的方法.分享给大家供大家参考,具体如下: 首先 要定义几个解析json的方法parseJsonMulti,代码如下: private vo ...
- vb mysql 转义字符,MySQL_在VB.NET应用中使用MySQL的方法, 绪言
在Visual Studio中使用 - phpStudy...
在VB.NET应用中使用MySQL的方法 绪言 在Visual Studio中使用向导连接到MySQL数据库是一件相当棘手的事情.因为MySQL并不在VS2012默认支持的数据库中(比如SQL Ser ...
- android 消息推送方法,一种基于Android系统的消息推送方法技术方案
[技术实现步骤摘要] 本专利技术涉及一种基于Android系统的消息推送方法,属于计算机 技术介绍 推送功能在手机应用开发中越来越重要,已经成为手机开发的必选项.消息推送,就是在互联网上通过定期传送用 ...
- win10 下Android 连接电脑本地MySQL数据库
1.确认MySQL服务器防火墙关闭,若关闭,则下一步,若未关闭,进行设置 具体方法为 控制面板->系统和安全>Windows Defender 防火墙->高级设置->入站规则 ...
- Scrapy爬取当当网的商品信息存到MySQL数据库
Scrapy爬取当当网的商品信息存到MySQL数据库 Scrapy 是一款十分强大的爬虫框架,能够快速简单地爬取网页,存到你想要的位置.经过两天的摸索,终于搞定了一个小任务,将当当网的商品信息爬下来存 ...
- 爬取京东本周热卖商品基本信息存入MySQL
爬取京东本周热卖商品基本信息存入MySQL 网络爬虫介绍 概述 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或 ...
- android服务进阶,我的Android进阶之旅------Android服务的生命周期回调方法
先引用一段官网上的文字 ======================================================================================== ...
- 最详细Android连接远程的MySQL数据库实例
最详细Android连接远程的MySQL数据库实例 tags:MySQL 文章目录 最详细Android连接远程的MySQL数据库实例 前言 环境配置 查看MySQL:version方法 新建Andr ...
最新文章
- 起底软银帝国:芯片、机器人、棒球队无所不投
- Java——集合框架(List)
- shell基础05 处理用户输入
- Python开发-- Lesson 2--Python数据类型(2016/07/30)
- CCPC2018(秦皇岛站)赛后反思
- 带货造假,买完不能换货?李佳琦、汪涵、李雪琴直播被中消协点名后这样回应...
- Pcap封包维护工具
- python lncrna_分析指令备份.sh
- 全国夜间灯光指数数据、GDP密度分布、人口密度分布、土地利用数据、降雨量数据
- 计算机求数值公式,excel表格常用技巧大全/EXCEL表格常用的计算公式
- GIS行业地图绘制的基本要求
- 构建Raspberry Pi,脉冲传感器和LCD的心跳计数器
- AI专家Raj Reddy建议:政府应免费发放智能手机
- 《笨方法学python》第三版 来自Percal25号行星的哥顿人
- 全套BAT大厂面试题整理锦集
- 再先进的在线教学,也要回归这个本质
- Portraiture2023最新版本下载及PS磨皮的方法教程
- 【JavaSE】面向对象编程
- word2013打开后一直未响应完美解决方案
- 欧式距离和曼哈顿距离
热门文章
- 江苏省有JAVA技能大赛,江苏省职业学校技能大赛组委会
- 退出所有循环_Python学习之路9—循环的总结
- python开发项目架构图_我的第一个python web开发框架(8)——项目结构与RESTful接口风格说明...
- thread local性能 c++_MySQL 5.7 amp; MySQL 8.0 性能对比
- python深拷贝实现原理_从底层剖析Python深浅拷贝
- 数据结构之插入排序:希尔排序(缩小增量排序)
- (软件工程复习核心重点)第六章实现和测试-第三节:单元测试
- JS 查看标签下某元素所有信息(查看元素,查询元素,遍历元素、HTMLCollection对象、NodeList对象)
- 一些常用的命令整理(更新ing~)
- spark-sql createOrReplaceTempView 和createGlobalTempView区别