安卓手机客户端怎样通过PC服务器端访问Oracle数据库,求高手

zm0906 2011-10-08 10:17:35
我要做个安卓手机客户端,再做个服务器端,通过服务器端访问Oracle数据库,本人安卓菜鸟,求高手指教,具体怎样实现。
...全文
941 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lht0211 2012-02-10
  • 打赏
  • 举报
回复
我用webservice现在是实现了,但是在手机上的性能不是很理想,速度比较慢!很困惑!
wenlin56 2011-10-11
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 fire_fire_fire 的回复:]

引用 6 楼 zm906 的回复:
引用 4 楼 wenlin56 的回复:
通过JSON来做数据交互吧。
例如:客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果组装为JSON返回给客户端。

楼主说的那种客户端直接连接到服务器的数据库进行操作,理论上是行不通的。

我就是想要客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果返回给客户端,除了……
[/Quote]

同意。
l13873666736 2011-10-11
  • 打赏
  • 举报
回复
通過WEBSERVICE連ORCLE吧,這樣最簡單,而且各平臺對對WEBSERVICE都有很我的支持
greenredshark 2011-10-09
  • 打赏
  • 举报
回复
既然是菜鸟为啥要用Orecale呢,还是用MySql吧,先上手再说
小裴同学 2011-10-09
  • 打赏
  • 举报
回复
发送sql语句去服务器是大错特错的。。
降龙 2011-10-08
  • 打赏
  • 举报
回复
连接oracle数据库最好是使用webservice访问。。不过这样需要在服务器端编写并部署webservice服务
wenlin56 2011-10-08
  • 打赏
  • 举报
回复
通过JSON来做数据交互吧。
例如:客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果组装为JSON返回给客户端。

楼主说的那种客户端直接连接到服务器的数据库进行操作,理论上是行不通的。
小裴同学 2011-10-08
  • 打赏
  • 举报
回复
呵呵很简单的。我们做项目一般是通过手机客户端用httpconnect去请求服务器获取数据。在web服务器上建立好数据库通过jdbc连接。然后获取。发点代码你看看吧。
public String getDataAsString(List<NameValuePair> params) {
String result = null;
try {
httpRequest = new HttpPost(url);
httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
httpResponse = httpClient.execute(httpRequest);
if (200 == httpResponse.getStatusLine().getStatusCode()) {
result = EntityUtils.toString(httpResponse.getEntity());
System.out.println("取得返回值" + result);
// String[] nameAndKey = result.split("-_-");
// if(nameAndKey.length==2){
// String name = nameAndKey[0];
// String key = nameAndKey[1];
// myPreference.write("name001", name);
// myPreference.write("key001", key);
// }
if (result.equals(YES)) {
return YES;
} else if (result.equals(NO)) {
return NO;
}
}
} catch (IOException e) {
System.out.println("没有取得返回值");
}
return NO;
}

package com.pei.test;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.pei.database.MyDbHelper;
/**
* class name:LoginServlet<BR>
* class description:登录的一些数据和控制<BR>
* PS:验证用户名和密码等等 <BR>
*
* @version 1.00 2011/09/21
* @author CODYY)peijiangping
*/
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private String username;
private String password;
private String key;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
username = request.getParameter("username");
password = request.getParameter("password");
key=username+"00";
if (doyanzheng() == true) {
MyDbHelper db = new MyDbHelper();
try {
String sql = "insert into test(username,keyname) values('"+username+"','"+key+"')";
db.insert(sql);
db.closed();
} catch (Exception e) {
e.printStackTrace();
}
// 跳转界面,进入metting.jsp传name值过去
// request.setAttribute("key", key);
// request.getRequestDispatcher("/jsp/metting.jsp").forward(request,
// response);
response.sendRedirect("/Good/jsp/metting.jsp?key="+key);
}
}

private boolean doyanzheng() {
// 验证用户名和密码
return true;
}

protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
/* 接收post请求 */
doGet(request, response);
}
}
zm0906 2011-10-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 peijiangping1989 的回复:]
在我看来用Oracle的永远不是菜鸟。。。这个我用的是mysql和sqlserver。在我看来应该也是一样的吧。通过java的jdbc来连接数据库。你服务器端如果是java编写的就非常简单了。
[/Quote]
呵呵,我真的是菜鸟,因为毕业设计要做安卓方面的东西,所以才刚接触安卓。那请问您能说的再具体一下么 我是要用TCP网络编程
小裴同学 2011-10-08
  • 打赏
  • 举报
回复
在我看来用Oracle的永远不是菜鸟。。。这个我用的是mysql和sqlserver。在我看来应该也是一样的吧。通过java的jdbc来连接数据库。你服务器端如果是java编写的就非常简单了。
fire_fire_fire 2011-10-08
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zm906 的回复:]
引用 4 楼 wenlin56 的回复:
通过JSON来做数据交互吧。
例如:客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果组装为JSON返回给客户端。

楼主说的那种客户端直接连接到服务器的数据库进行操作,理论上是行不通的。

我就是想要客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果返回给客户端,除了您说的JSDN,还有别的方法么?
[/Quote]
你可以去看看android的HTTP操作中的get和post,可以做到。
但是你把SQL语句发送到服务器,有没有考虑过安全性方面的问题?
如果这样做那就根本没有安全性可言了,任何人只要知道了网址就可以进行SQL注入了,估计毕业设计也够呛。
我建议你在服务器端使用webservice,客户端调用webservice里面的方法。或者还是使用HTTP操作,调用里面的方法,而不是直接传SQL语句
zm0906 2011-10-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wenlin56 的回复:]
通过JSON来做数据交互吧。
例如:客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果组装为JSON返回给客户端。

楼主说的那种客户端直接连接到服务器的数据库进行操作,理论上是行不通的。
[/Quote]
我就是想要客户端发送一段SQL语句到服务器,服务器发送到数据库执行,将执行结果返回给客户端,除了您说的JSDN,还有别的方法么?

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧