今天看到一遍文章,文章罗列了iPhone不具备android系统的十大功能!其实除了功能上的还有其他方面,比如android比iPhone实惠多了,不管你是购机者还是开发者,假如你要开发iPhone那么首先你得花两个月的工资买台apple,还得学习那罕见的语言objective-c,敢问有几学过啊?好了,言归正传,那十大功能其中有一条是,可以用电脑控制android手机!不知道有没有朋友想过:假如我要利用android手机控制电脑又该如何控制呢? 哈哈,若也有此想法的盆友们咱门可以一起讨论讨论啊=="
这几天的苦思冥想,终于冒出了个想法,不知可行否,贴出来与大家分享下,那个该批该评的别客气哈~~
方法:利用android手机修改远程数据库的数据—>电脑里的某个软件不断的从数据库里取数据,然后根据不同的数据作出相应的反应,这样看起来就是android来控制电脑了哈!
那么这里首先有个问题,我们知道现在android还是不支持直接访问远程数据库的,那么我们该如何去访问远程数据库呢? 这也是今天我要和大家分享的啊! 我们可以用下面的方案来实现:
客户端-Tomcat服务器-远程数据库。其中客户端与服务器通过XML文件来交互,服务器与数据库那就是XML与数据库之间的转换啦! 这在我前两篇文章里就是XML与数据库的交换了,不明白的童鞋可以翻出来看看啊! 那么我们要从客户端如何来操纵服务器与数据库的交互呢?我们可以从客户端里调用服务器里的jsp文件,ok,到这相信大家也就基本明白了吧,不明白的再交流。
下面贴出一段数据库转换成XML文件的JSP代码
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%@ page import="java.io.*"%>
<%@ page import="java.sql.*"%>
<%
Connection conn;
Statement stmt;
ResultSet rs;
try
{
File file=new File("sqltoxml.xml");
file.createNewFile();
FileWriter fw = new FileWriter(file);
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String URL="jdbc:sqlserver://localhost:1433;databaseName=eZ7IC";
String user="sa";
String password="zrj";
conn = DriverManager.getConnection(URL,user,password);
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery("select * from ICDM001");
fw.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n");
fw.write("<eZ7IC>\r\n");
while(rs.next())
{
fw.write("<ICDM001>\r\n");
fw.write("<ICDM0a00>");
String ICDM0a00 = rs.getString("ICDM0a00");
fw.write(ICDM0a00);
fw.write("</ICDM0a00>\r\n");
fw.write("<ICDM0a01>");
String ICDM0a01 = rs.getString("ICDM0a01");
fw.write(ICDM0a01);
fw.write("</ICDM0a01>\r\n");
fw.write("<ICDM0a02>");
String ICDM0a02= rs.getString("ICDM0a02");
fw.write(ICDM0a02);
fw.write("</ICDM0a02>\r\n");
fw.write("<ICDM0a03>");
String ICDM0a03 = rs.getString("ICDM0a03");
if(rs.wasNull())
ICDM0a03 = "NULL";
fw.write(ICDM0a03);
fw.write("</ICDM0a03>\r\n");
fw.write("<ICDM0a04>");
String ICDM0a04 = rs.getString("ICDM0a04");
fw.write(ICDM0a04);
fw.write("</ICDM0a04>\r\n");
fw.write("<ICDM0a05>");
String ICDM0a05 = rs.getString("ICDM0a05");
fw.write(ICDM0a05);
fw.write("</ICDM0a05>\r\n");
fw.write("<ICDM0a06>");
String ICDM0a06 = rs.getString("ICDM0a06");
if(rs.wasNull())
ICDM0a06 = "NULL";
fw.write(ICDM0a06);
fw.write("</ICDM0a06>\r\n");
fw.write("</ICDM001>\r\n");
}
fw.write("</eZ7IC>");
fw.close();
}catch(Exception e){
e.printStackTrace();
}
%>
</body>
</html>
是不是似曾相识啊? 对的,就是前一篇的代码转换为JSP代码而已!XML文件数据写进数据库的JSP代码也就不多说,仿照上面的就可以了!
然后在android里我们利用WebView来调用JSP文件,简单代码如下:
package zrj.sqlxmljsp;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.Button;
public class SQLXMLJSP extends Activity {
/** Called when the activity is first created. */
private Button RButton,WButton;
private WebView WebView1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
RButton = (Button)findViewById(R.id.button1);
WButton = (Button)findViewById(R.id.button2);
RButton.setOnClickListener(new RButtonListener());
WButton.setOnClickListener(new WButtonListener());
WebView1 = (WebView)findViewById(R.id.WebView1);
}
class RButtonListener implements OnClickListener //从数据库读取数据 创建XML文件
{
@Override
public void onClick(View v) {
try{
String actionuri="http://192.168.0.126:8888/sqlandxml/WebContent/test1.jsp";
WebView1.loadUrl(actionuri);
}
catch(Exception e){
e.printStackTrace();
}
}
}
class WButtonListener implements OnClickListener //插入数据
{
@Override
public void onClick(View v)
{
try{
String actionuri="http://192.168.0.126:8888/sqlandxml/WebContent/test2.jsp";
WebView1.loadUrl(actionuri);
}catch(Exception e){
e.printStackTrace();
}
}
}
}
ok,完成上面的工作,咱们就实现了android访问远程数据库了!
分享到:
相关推荐
"利用JSON WebService实现Android访问远程数据库" 本文主要介绍了如何使用JSON WebService实现Android访问远程数据库。随着无线网络的普及和Android系统的发展,移动设备的性能和内存无法与PC相比,绝大多数数据库...
在Android开发中,访问远程数据库是常见的需求,通常有两种主要的方法:基于HTTP协议获取数据和使用WebSocket进行实时通信。本文将详细探讨第一种方法,即如何通过HTTP协议从服务器获取数据。我们将使用Java的Struts...
在Android开发中,远程数据库操作是一项重要技能,它允许应用程序通过网络与远程服务器进行数据交互,从而实现数据的存储和检索。本项目是基于Android Studio的,提供了实现远程数据库操作的源码,以及一个简单的...
摘要:虽然Android有SQLite的支持,但...而访问远程数据库的方法多种多样,主要分为直接和间接两种。直接访问采用JDBC连接技术,但其安全性较低,间接方法主要通过客户端向服务器发送请求,进而采用数据传输的方式进行
在Android应用开发中,直接与远程数据库交互可能会面临多种挑战,包括安全性、性能以及网络通信的复杂性。为了解决这些问题,通常会采用中间件作为桥梁,以简化数据交换过程。这里的"Android实现远程数据库的服务端...
Android 配合 WebService 访问远程数据库 Android 与服务器端数据交互是移动应用开发中非常重要的一部分。在本文中,我们将介绍如何使用 WebService 访问远程数据库,并在 Android 客户端中调用服务器端方法获取...
"利用JSON实现Android高效、安全访问远程数据库的一种方式" JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它可以将JavaScript对象中的数据转换为字符串,然后可以在函数之间轻松地传递这个字符...
在Android开发中,实现客户端与Web服务器的数据交换是一项常见的任务,尤其在移动应用需要与远程数据库交互时。本文将深入探讨“Android客户端远程登录Web服务器数据交换实例”,讲解如何使用MySQL数据库、JSON数据...
由于Android系统本身并不直接支持远程数据库的直接访问,因此我们需要采取一些间接手段来实现这一目标。 本文将介绍一种常见的解决方案,即通过客户端-服务器架构,利用XML作为数据交换格式,借助JSP脚本在服务器端...
- **USB调试**:通过开启Android设备的USB调试模式,开发者可以使用ADB(Android Debug Bridge)工具直接访问设备上的SQLite数据库,进行数据查看和修改。 - **网络连接**:通过WiFi或移动网络,Android应用可以通过...
基于android客户端(ADT22、API18),通过HTTPGet与服务端通信,在URL传输参数指令,读取服务端反馈回来的结果,实现远程操作MySQL数据库。服务端基于MyEclipse10环境,使用servelet+struts2+tomcat,接收客户端HTTP...
本教程将探讨如何在Android应用中实现远程连接到MySQL数据库。标题"android远程连接MYSQL数据库"暗示了我们将讨论这一关键技能。 首先,我们要知道Android系统本身并不支持直接连接到MySQL数据库,因为Android设备...
- 在`AndroidManifest.xml`文件中添加互联网访问权限,因为JDBC访问远程数据库通常需要网络支持。 ```xml <uses-permission android:name="android.permission.INTERNET"/> ``` 2. **引入MySQL JDBC驱动**: - ...
不过,值得注意的是,由于Android应用直接访问远程数据库可能引发安全问题,因此在生产环境中,通常推荐使用更安全的云数据库服务,如Firebase Realtime Database或Firestore,或者自建的RESTful API。
摘要:虽然Android有SQLite的支持,但...而访问远程数据库的方法多种多样,主要分为直接和间接两种。直接访问采用JDBC连接技术,但其安全性较低,间接方法主要通过客户端向服务器发送请求,进而采用数据传输的方式进行
本文将深入探讨如何在Android Studio中操作MySQL数据库,实现Android应用与远程服务器之间的数据交互。 首先,了解基础知识是必要的。Android Studio是Google提供的一个强大的集成开发环境(IDE),用于构建Android...
10. **移动设备支持**:Navicat有移动应用版本,用户可以在iOS或Android设备上远程访问数据库。 11. **版本控制**:集成Git,可以对数据库结构进行版本控制,追踪和回滚更改。 12. **自动化任务**:用户可以设置...