一.编写目的

数据库一般都提供了远程连接的功能,使得很多客户端都可以通过网络直接操作后台数据库,那么,android设备的应用程序是使用java编写,是不是也可以使用jdbc的方式来连接数据库呢,确实如此!虽然android直连数据库从安全性,复杂性,稳定性来讲,都不怎么好,但却不妨碍它实现这个功能,所以,再当你老板或客户懒得搭建后台服务的时候,问你能不能直接操作后台数据库,你就可以自信的告诉他,能!

二.连接数据库示例

因为是通过网络连接后台数据库,所以第一步,必须先在你应用里面添加网络权限。然后如果是在自己主机上架设数据库测试的话,先得把防火墙关了,然后设置数据库的远程访问许可,然后连接不上的话,就去网上百度相应的错误内容信息,都可以搜到答案,哈哈哈哈。

2.1 连接sqlserver:

这个比较好测试通过,直接使用后台数据库对应的jjdbc ar包在理的项目里面,我的项目里面用的是sqljdbc4,然后就可以获取数据库的连接了,代码如下:

public static Statement getStatement() {try {Class.forName("net.sourceforge.jtds.jdbc.Driver");} catch (ClassNotFoundException e1) {e1.printStackTrace();MyApplication.loger.info("[DBHelper.getStatement:]" + e1);}try {con = DriverManager.getConnection("jdbc:jtds:sqlserver://" + netWork.getIP() + ":"+ netWork.getPort() + "/" + netWork.getDbName(),netWork.getAccountNo(), netWork.getPassword());stmt = con.createStatement();} catch (Exception e) {// TODO: handle exceptionMyApplication.loger.info("[DBHelper.getStatement:]" + e);}return stmt;}public static void closeCurrent() {try {if (stmt != null)stmt.close();if (con != null)con.close();} catch (SQLException e) {// TODO Auto-generated catch blockMyApplication.loger.info("[DBHelper.closeCurrent:]" + e);}}

2.2 MySql数据库

这个数据库是自己在电脑上搭建环境测试的,我电脑上安装的是Mysql6.0,项目中使用的jar包是mysql6.0,也是网上下的。这个测试花费时间最多的就是配置后台的测试数据库,首先,得关掉pc的防火墙,然后得在mysql数据库中添加远程访问许可。就两条命令。

获取连接代码如下:

Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动con = (Connection) DriverManager.getConnection("jdbc:mysql://192.168.23.1:3306/dbName", "user", "password");

2.3 oracle数据库

这个数据库和其他两个也差不多,唯一区别比较大的是jar包,它貌似支持ojdbc14jar包,其他的jar包我找了好几个,都报的找不到驱动的错。

获取连接代码如下:

Class.forName("oracle.jdbc.driver.OracleDriver");// 加载驱动
con = (Connection) DriverManager.getConnection("jdbc:oracle:thin:@"+ address+ ":1521:" + sid, user,password);

三.结束

这篇文章主要是记录了android连接数据库的可行性,及一些容易出错的地方,细节方面过多的描述,因为在不同的设备及pc上可能报不同的错,朋友们在编写的过程中发挥自学及探寻的能力吧,百度应该能解决这些问题,over。

android设备直连数据库相关推荐

  1. Android中实现SQLite数据库CRUD操作的两种方式

    Android中实现SQLite数据库CRUD操作的两种方式 SQLite是一款轻量级的关系型数据库,具有运行速度.占用资源少的特点.通常只需要几百KB的内存就够了,因此特别适合在移动设备上使用.SQ ...

  2. XamarinSQLite教程在Xamarin.Android项目中定位数据库文件

    XamarinSQLite教程在Xamarin.Android项目中定位数据库文件 实际开发中,经常需要验证数据库操作的正确性.这个时候,需要打开数据库文件,进行确认.下面是如何找到MyDocumen ...

  3. Android设备的网络抓包

    Android设备的网络抓包 背景 比如产品有4G和以太网,我们在调试的时候可能相知道看网络是走4G还是以太网,需要通过抓包来确定 2.抓包方案 2.1   采用集线器 此方案可以对比分析多台设备之间 ...

  4. 怎样对Android设备进行网络抓包

    问题描写叙述: 前段时间自己的app訪问server的url总是会出现间接性失败的问题,于是和server的同事开了个会.提出了他们server存在的这个bug,我的同事自然说自己的server没问题 ...

  5. 所有的 iPhone 和高端 Android 设备都被破解了!

    整理 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 在大家眼里,iPhone 手机一向以安全性著称. 以至于在 2016 年,美国法院曾要求苹果公司协助美国联邦调查局解锁一凶犯的 iPho ...

  6. php和android和mysql_如何使用JSON连接Android和PHP Mysql数据库

    我们先来看一个简单的Android app例子(这里是一个商品存货清单项目),在Android程序中,我们可以访问(call)PHP脚本来执行简单的CRUD操作(创建,读取,更新,删除).为了使你对它 ...

  7. 是否有唯一的 Android 设备 ID?

    问: Android 设备是否有唯一 ID,如果有,使用 Java 访问它的简单方法是什么? 答1: 保持自己快人一步,享受全网独家提供的一站式外包任务.远程工作.创意产品订阅服务–huntsbot. ...

  8. android p2p 连接服务器上,当通过Wi-Fi P2P使用网络服务发现时无法连接到Android设备每个人都可以使用网络服务发现...

    ! 我正在开发一个Android应用程序,允许与附近已安装此应用程序的设备聊天.为了做到这一点,我使用Wi-Fi P2P API和网络服务发现来搜索附近的设备. 我已经编写了用于在服务启动的线程中搜索 ...

  9. 获取Android设备的方向 ,使用加速度重力传感器

    带有g-sensor的Android设备上可通过API获取到设备的运动加速度,应用程序通过一些假设和运算,可以从加速度计算出设备的方向 获取设备运动加速度的基本代码是: SensorManager s ...

最新文章

  1. php字符串处理函数相关操作
  2. Qt 操作words实例 --- 幼儿快算题生成器
  3. 《大规模Web服务开发技术》
  4. java虚拟机的生命周期_深入理解Java虚拟机——JVM的生命周期
  5. 微软发布关于 Surface Pro 3 TPM 绕过漏洞的安全公告
  6. 使用notebook 笔记(1)
  7. 35-BigDecimal详解
  8. java mongodb 使用场景_MongoDB 数据库引用
  9. java %2c_java2c工具(修复)
  10. Java正则表达式全解
  11. 小程序Git版本管理
  12. 读笔:《重来也不会好过现在》
  13. 数据流图DFD的画法
  14. 做机器人开发,你一定绕不开的模块!
  15. 美团点评女技术总监任登君:不要给自己的人生设限
  16. PC端的一些简单适配
  17. 基于onenet的开关定位接收消息的APP设计
  18. 电商社区怎么做?看服饰大佬如何通过粉丝圈激活客户
  19. 《Go圣经》章一:入门
  20. Python安装Image库

热门文章

  1. java中dynamic_dynamic
  2. Android Kotlin 文件读写操作扩展函数,Raw资源读取,Assets资源读取
  3. java变形金刚视频,Java 通用代码生成器光 2.0.0 Insight(内省) 发布尝鲜版 4,代码变形金刚...
  4. 2023最新USDT理财系统源码+代码完美流畅/框架二开/功能强大
  5. 千兆网络变压器和百兆网络变压器有什么区别?不能互换使用吗?
  6. 数据挖掘 知识发现过程与应用结构
  7. Incorrect string value XF0 X9F X98 XB3 XE3 for column 解决办法
  8. 第十一章(2)对坐标的曲线积分
  9. 芯龙半导体IPO过会:拟募资2.6亿 年营收2亿,员工仅53人
  10. 使用Fabric.js库制作一个绘画网站,实现绘画板涂鸦功能