android又腐案mysql数据库;连接不上的问题

FerrlsWheelsTicket 2014-11-27 08:14:19
package com.example.mysqldemo;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import android.os.Bundle;
import android.R.string;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {
protected static final String TAG = null;
Button button1,button2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button) this.findViewById(R.id.button1);
button2 = (Button) this.findViewById(R.id.button2);



button1 .setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub


try {
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/clientlist?useUnicode=true&characterEncodeing=utf-8", "root",
"11231205");
if(!connection.isClosed()){
System.out.println("连接成功");
}
Statement usest = connection.createStatement();
String strm = new String(
("select* from clientdata;").getBytes("gbk"),
"iso-8859-1");
ResultSet users = usest.executeQuery(strm);

if (users.next()) {

String loginid = new String(users.getString("loginID").getBytes("gbk"),
"iso-8859-1");

String loginpw = new String(users.getString("password").getBytes("gbk"),
"iso-8859-1");
Log.i(TAG, loginid+" "+loginpw);
}

} catch (Exception e) {
e.printStackTrace();
}


}
});


button2.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
System.exit(0);
}
});

}





}


哪位大神能帮我看下代码,为什么连接不上mysql数据库吗,我在java平台上运行都可以的(用写数据库的思路),本来以为搬过来就可以了,结果完全没反应,在网络上搜了很多方法,都大同小异,没能解决,我mysql的驱动是加载了的,通过build path,是不是有什么地方需要注意的?
...全文
425 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
k_c_u_f 2016-04-07
  • 打赏
  • 举报
回复
jdbc:mysql://localhost:3306,明显错了,mysql不可能安装在Android里面;还有可能服务器防火墙等限制了访问;也有可能mysql限制了不能远程连接。
  • 打赏
  • 举报
回复
楼主,我也遇到了相同的问题,真心希望你能给我解答。我的也是找不到驱动程序,但是在java中就能成功连接,android却不行。我在的 qq 1337277571。 谢谢!!!
windfury_plus 2014-12-05
  • 打赏
  • 举报
回复
引用 3 楼 u013751671 的回复:
第一个问题,我权限没加,请问如何加呢? 第二个问题,网络服务是放在线程里的 第三个问题,我误认为在虚拟机上的ip地址就是电脑本身的ip地址,所以就没去多想,那虚拟机上能否存在android端自己的ip呢?
1、在Mainifest.xml文件里加入<uses-permission android:name="android.permission.INTERNET" />这句话 如果你有更多操作也要考虑是否要加权限,网上可以搜到 2、好的 3、抱歉我之前说错了。 android虚拟机访问电脑服务,不能用localhost或127.0.0.1,是用10.0.2.2(能跑通了,你再试试用localhost,应该是就会出错) 参见:http://80x86.iteye.com/blog/539356 虚拟机的ip是电脑的,不过是端口不对,默认第一个启动的应该是5554这个端口。不过你这个例子里没用到
FerrlsWheelsTicket 2014-12-04
  • 打赏
  • 举报
回复
第一个问题,我权限没加,请问如何加呢? 第二个问题,网络服务是放在线程里的 第三个问题,我误认为在虚拟机上的ip地址就是电脑本身的ip地址,所以就没去多想,那虚拟机上能否存在android端自己的ip呢?
windfury_plus 2014-12-03
  • 打赏
  • 举报
回复
直接移动的话有加权限么……这样的网络服务有放在线程里么…… 还有localhost是电脑的127.0.0.1,java(pc端)当然是和电脑共用本地ip的,但是android的ip是它自己的啊!怎么会成功?
marlenna 2014-12-01
  • 打赏
  • 举报
回复
没有见过在Android上连接MySQL数据库的,不过,可以搭建一个Java服务器连接数据库,Android端从服务器端获取数据

80,354

社区成员

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

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