局域网场景下Android客户端实现同数据库连接通信

2023-11-12

实现

局域网场景下,Android客户端连接数据库,并可进行增删改查。

直接连接

项目工程引入JDBC驱动,直接连接。

JDBC是Java Data Base Connectivity的缩写,即“java数据库连接”,一组Java语言编写的类和接口,为Java层直接操作关系型数据库提供标准API。原理很简单,主要是服务器DBMS发送SQL(结构化查询语言)指令实现各种数据库操作。

间接连接

服务器上用PHP+DBMS做服务器端,PHP通过json或xml封装DBMS数据后返给Android客户端。

JDBC方式安全性不高且访问数据量过多易出问题。另外,Android系统本身提供对json或xml直接解析API,所以建议采用第PHP+DBMS方式,实用性与安全性较高。

驱动

MySQL mm.mysql-2.0.2-bin.jar

Connection con = null;
Class.forName( "org.gjt.mm.mysql.Driver" );
con = DriverManager.getConnection( "jdbc:mysql://DbComputerNameOrIPAddr:3306/DatabaseName", UserName, Password ); 

PostgreSQL pgjdbc2.jar

Connection con = null;
Class.forName( "org.postgresql.Driver" );
con = DriverManager.getConnection( "jdbc:postgresql://DbComputerNameOrIPAddr/DatabaseName", UserName, Password );

Oracle classes12.zip

Connection con = null;
Class.forName( "oracle.jdbc.driver.OracleDriver" );
con = DriverManager.getConnection( "jdbc:oracle:thin:@DbComputerNameOrIPAddr:1521:DatabaseName", UserName, Password );

Sybase jconn2.jar

Connection con = null;
Class.forName( "com.sybase.jdbc2.jdbc.SybDriver" );
con = DriverManager.getConnection( "jdbc:sybase:Tds:DbComputerNameOrIPAddr:2638/DatabaseName", UserName, Password );
//(Default-Username/Password: "dba"/"sql") 

Microsoft SQLServer

Connection con = null;
Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
con = DriverManager.getConnection( "jdbc:jtds:sqlserver://DbComputerNameOrIPAddr:1433/DatabaseName", UserName, Password);

Microsoft SQLServer

Connection con = null;
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );
con = DriverManager.getConnection( "jdbc:microsoft:sqlserver://DbComputerNameOrIPAddr:1433;databaseName=master", UserName, Password );

连接SQLite

通过开源库sqlite-jdbc实现连接通信。

连接SQL Server

方式一

通过Microsoft的JDBC驱动连接。此JDBC驱动一共有三个文件,分别是mssqlserver.jar、msutil.jar、msbase.jar。但Microsoft官网已找不到这些文件,其提供的sqljdbc.jar和sqljdbc4.jar并不支持SQL Server 2000。

驱动程序名
com.microsoft.jdbc.sqlserver.SQLServerDriver

数据库连接URL
jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=dbname

方式二

通过jTDS驱动连接。

驱动程序名
net.sourceforge.jtds.jdbc.Driver

数据库连接URL
jdbc:jtds:sqlserver://localhost:1433/dbname

Demo

AndroidSQLServerCommunication

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

局域网场景下Android客户端实现同数据库连接通信 的相关文章

  • onBeaconServiceConnect 未调用

    和以前一样 我使用 Android Beacon 库 它已经工作了 我可以通过 BLE 低功耗蓝牙找到信标 但是现在 更新到最新版本的库后 现在方法onBeaconServiceConnect 不再跑了 请告诉我我需要做什么才能让它发挥作用
  • Android webview 滚动不起作用

    我正在尝试在网络视图中向下滚动到页面底部 我正在使用谷歌在其教程中提供的网络视图示例 我正在使用这行代码来尝试滚动 但它不起作用 mWebView pageDown true 关于如何使其以编程方式滚动有什么建议吗 谢谢 public cl
  • Android 在打开应用程序时会广播吗?

    例如 如果我想知道Youtube何时打开 是否有与之相关的广播 我当然知道我可以轮询 logcat 消息来检查活动 但我可以通过广播来做到这一点吗 因为它会少得多的耗电 此链接似乎表明这是不可能的 如何跟踪 Android 中的应用程序使用
  • Twitter 登录说明

    我想在 Android 中创建一个 Twitter 应用程序 为此 我想创建一个登录页面并登录到 Twitter 为此 我们需要消费者密钥和消费者密钥 这是什么意思 要创建此登录页面 除了 Twitter 帐户之外 我们还需要其他任何东西吗
  • 在android中通过BLE传输图像

    我使用以下代码传输 1 MB 的图像 如果在每个数据包之间实现线程延迟 则图像将成功传输 如果未设置线程延迟 则所有数据包均从BluetoothGattServer 发送 但BluetoothGattCallback 不会接收所有数据包 任
  • 带有一、二和三个按钮的 Android 警报对话框

    我不经常发出警报 但每次发出警报时 我都会花一些时间来阅读文档 https developer android com guide topics ui dialogs html并弄清楚如何去做 由于我现在不得不这样做几次 所以我将在下面写一
  • ffmpeg视频已压缩但无法在浏览器中播放

    我已经集成了ffmpeg4android lib 视频压缩工作正常 但视频无法在除 safari 浏览器之外的浏览器中播放 上传到服务器后 我使用了以下命令 ffmpeg y i
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • 如何在React Native Android中获取响应头?

    您好 我想在获取 POST 请求后获取响应标头 我尝试调试看看里面有什么response with console log response 我可以从以下位置获取响应机构responseData但我不知道如何获取标题 我想同时获得标题和正文
  • 如何在android线性布局上获得阴影? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在android中为View设置阴影 https stackoverflow com questions 4406524 how to set shadow to a view in androi
  • 调整浮动操作按钮的图标大小(fab)

    The new floating action button should be 56dp x 56dp and the icon inside it should be 24dp x 24dp So the space between i
  • Android 应用程序中的 Eszett (ß)

    我的 res layout activity 文件中的德语 字符在我的应用程序中自动转换为 ss 即使我将语言和键盘设置为德语 它仍然不会显示 Android 中可以显示 吗 edit
  • 如何检查用户在EditText中输入自己的电话号码?

    用户将在我的 Android 应用程序的注册页面上的编辑文本中输入手机号码 如何检查用户输入的是他 她的手机号码而不是其他人的 我试过这个 TelephonyManager tMgr TelephonyManager mAppContext
  • 在 React Native 中调试应用程序崩溃

    我是 React Native 新手 我正在尝试安装 React Native Facebook SDK 以便我可以使用我的应用程序进行 Facebook 登录 我按照此处列出的步骤操作 https tylermcginnis com in
  • PhoneStateListener 不调用

    这是我的完整代码 广播示例 java package com example broadcast gt import android app Activity import gt android content Context import
  • 如何修改 Skobbler 注释而不重新添加它

    我必须修改 SKAnnotation 的图像 注释生成器代码 private SKAnnotation getAnnotationFromView int id int minZoomLvl View view SKAnnotation a
  • Android:RecyclerView 不显示片段中的列表项

    有人可以帮我尝试让我的 RecyclerView 出现吗 如果我不在片段中实现它 就会出现这种情况 然而 当我尝试将其实现到片段中时 CarFront 中的其他 XML 代码与 RecyclerView 分开显示 我的日志中收到此错误 E
  • 错误:无法创建新会话,因为找不到需要 HttpClient、InputStream 和 long 的“createSession”

    我正在尝试自动化 Android 混合应用程序 但出现以下错误 1 线程 main org openqa selenium WebDriverException中出现异常 无法创建新会话 因为未找到需要 HttpClient InputSt
  • Android studio - 如何查找哪个库正在使用危险权限?

    我正在尝试将 apk 上传到 google play 商店 但令我惊讶的是 我正在使用以下权限 Your APK is using permissions that require a privacy policy android perm
  • 使用单选按钮更改背景颜色 Android

    我试图通过从单选组中选择单选按钮来更改应用程序选项卡的背景 但是我不确定如何执行此操作 到目前为止我已经 收藏夹 java import android app Activity import android os Bundle publi

随机推荐

  • XML建模(简单易学)

    目录 XML建模步骤 1 什么是建模 2 导入jar包 3 创建XML文件 4 根据XML文件中的元素创建模型类 ConfigModel类 ActionModel类 ForwardModel类 4 工厂类的编写 XML建模步骤 1 什么是建
  • rabbitTemplate 让setConfirmCallback执行完成后再去发送消息给消费者

    import org springframework amqp AmqpException import org springframework amqp rabbit connection CachingConnectionFactory
  • 【记录】安装zsh及报错处理

    1 安装zsh sudo apt get install y curl zsh zsh doc git 2 安装插件系统oh my zsh 打开oh my zsh官网 Oh My Zsh a delightful open source f
  • 车载通信——J1939 DM1

    诊断故障代码 DTC 由4 个独立域构成 a 可疑参数的编号 SPN 19位 b 故障模式标志 FMI 5位 c 发生次数 OC 7位 d 可疑参数编号的转化方式 CM 1 位 Byte1 Lamp Status Bits1 2 Prote
  • 【OV7670】基于FPGA的OV7670摄像头介绍和使用

    1 软件版本 quartusii12 1 2 本算法理论知识 OV7670摄像头模块 带384Kb FIFO 数字摄像头 手动变焦 OV7670总共有656 488个像素 其中640 480个有效 即有效像素为30W 支持RawRGB RG
  • [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)

    最近在使用Python爬取网页内容时 总是遇到JS临时加载 动态获取网页信息的困难 例如爬取CSDN下载资源评论 搜狐图片中的 原图 等 此时尝试学习Phantomjs和CasperJS来解决这个问题 这第一篇文章当然就是安装过程及入门介绍
  • SQLite 的简单使用(以Navicat为例)

    一 简介 iOS中的数据存储方式 Plist NSArray NSDictionary Preference 偏好设置 NSUserDefaults NSCoding NSKeyedArchiver NSkeyedUnarchiver SQ
  • Java设计之道——通过UML理解23种设计模式

    文章目录 UML类图 泛化 generalize 与实现 realize 聚合 aggregation 与组合 composition 关联 association 与依赖 dependency 23种设计模式 创建型模式 结构型模式 行为
  • webpack使用CMD、AMD、CommonJS、ES6区别以及运用

    之前在网上浏览器的webpack模块化很乱 而且也没有把CMD模块化使用讲清楚的 终于忍不下去 将几种模块化以一种清晰的方式写出来 这也是我一直想做的事 下面就来讲讲CMD AMD commonJs es6模块化的运用 CMD CMD是se
  • 编译出现:failed to compile bitcode for ***: Debug: SDK path: /Applications/Xcode.app/Contents

    解决方法 MyProjectTarget gt Build Settings gt Enable Bitcode NO
  • Notepad++添加读取十六进制插件HexEditor

    下载地址 https github com chcg NPP HexEdit releases 安装方式 下载压缩包 例如 HexEditor 0 9 5 19 x64 zip 解压到本地目录 将文件夹更名为HexEditor 打开Note
  • Linux基础服务9——Tomcat

    文章目录 一 基本了解 二 安装tomcat 三 常用文件 3 1 bin目录文件 3 2 conf目录文件 3 2 1 server xml文件 3 2 2 tomcat users xml 文件 四 分离部署lamt架构 4 1 安装h
  • 螺旋矩阵的实现

    螺旋矩阵就是形如如下图的矩阵 看到矩阵知道它由四条边组成 这样的话就有这样的n 2个环 但是如果是奇数矩阵的话在最中间需要特殊处理一下 代码如下 include
  • 攻防世界之Web新手练习篇

    前言 天行健 君子以自强不息 地势坤 君子以厚德载物 周易 第一次接触CTF比较晚 学期已过近半 第一次做题就是在攻防世界 这里题目适合刚接触的萌新 写此篇博客 以为纪念 首页 目录 View source robots backup co
  • CentOS 初体验三: Yum 安装、卸载软件

    转载请标明出处 http blog csdn net zhaoyanjun6 article details 78894974 本文出自 赵彦军的博客 一 Yum 简介 Yum 全称为 Yellow dog Updater Modified
  • Unity3D服务器端使用PhysX计算物理

    本文的最终目的 当设计师在Unity3D中制作好游戏场景后 为Gameobject拖好Collider 通过我们写的工具导出这份场景的Collider配置 在服务器端能够生成一份一模一样的物理世界 从而由权威服务器去计算物理 诸如子弹有没有
  • FM/AM收音机原理

    收音机这东西很早就开始用了 但一直都没有了解过它的原理 听说是很简单 下面记录一些笔记 1 基本概念 收音机是一种小型的无线电接收机 主要用于接受无线电广播节目 收听无线电发射台 首先说一下收音机的种类 按解调方式和波长可以分为以下几类 调
  • VSCode加入Anaconda大家庭

    此文章首发于公众号Python for Finance 链接 https mp weixin qq com s rZsopAtS8UZ32aohWuhVBA 问题描述 我安装的是Anaconda 但最近发现VScode编辑ipynb非常好使
  • Ubuntu虚拟机找不到终端

    快捷键 Ctrl Alt T 即可打开终端窗口 或者按 Ctrl Alt F1 F6 均可进入终端 模拟终端 不显示桌面 想要右键打开终端 apt get install nautilus open terminal 注销系统重新登录 即可
  • 局域网场景下Android客户端实现同数据库连接通信

    实现 局域网场景下 Android客户端连接数据库 并可进行增删改查 直接连接 项目工程引入JDBC驱动 直接连接 JDBC是Java Data Base Connectivity的缩写 即 java数据库连接 一组Java语言编写的类和接