android虚拟机 连接本地pc上的Mysql

Android中模拟器如何访问本地mysql数据库

   package com.game.music;

import java.io.UnsupportedEncodingException;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

import com.game.GuessMusicName.R;
import com.game.music.entity.MusicInfo;
import com.game.music.entity.db.DBHelper;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class MainActivity extends Activity {
	private Button startButton;
	private Button createDatabaseButton;
	private Button insertButton;
	private Button queryButton;
	private List musicList = new ArrayList();
	private Button mysqlButton = null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		startButton = (Button)findViewById(R.id.start);
		startButton.setOnClickListener(new StartButtonListener());
		createDatabaseButton = (Button)findViewById(R.id.create);
		insertButton = (Button)findViewById(R.id.insert);
		queryButton = (Button)findViewById(R.id.query); 

		createDatabaseButton.setOnClickListener(new CreateDatabaseListener());
		insertButton.setOnClickListener(new InsertDatabaseListener());
		queryButton.setOnClickListener(new QueryDatabaseListener());
		//测试连接mysql
		mysqlButton = (Button) findViewById(R.id.mysql);
		mysqlButton.setOnClickListener(new MysqlButtonListener());

	}

	class MysqlButtonListener implements OnClickListener{

		@Override
		public void onClick(View v) {
			 sqlCon();
		}

	}

//	private void mSetText(String str){
//    	 TextView txt=(TextView)findViewById(R.id.txt);
//    	 txt.setText(str);
//    }

    private void sqlCon(){
    	System.out.println("0000000000000");
    	try {
        	Class.forName("com.mysql.jdbc.Driver");
		} catch (Exception e) {
			e.printStackTrace();
		}
//    	10.76.160.212 10.76.161.206
		try {
			System.out.println("1111111111111111111111111111111111");
//            String url ="jdbc:mysql://10.0.0.2:3306/music_info?username=root&password=123456&useUnicode=true&characterEncoding=UTF-8";//链接数据库语句
//            Connection conn= (Connection) DriverManager.getConnection(url); //链接数据库
            Connection conn = (Connection) DriverManager.getConnection("jdbc:mysql://10.0.2.2:3306/music_info","root","123456");
            Statement stmt=(Statement) conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
            String sql="select * from music";//查询music表语句
            ResultSet rs=stmt.executeQuery(sql);//执行查询
            StringBuilder str=new StringBuilder();
            while(rs.next()){
            	str.append(rs.getString(2)+"\n");
            }
//            mSetText(str.toString());
            System.out.println(str.toString());

            rs.close();
            stmt.close();
            conn.close();

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

	}

	class StartButtonListener implements OnClickListener{

		@Override
		public void onClick(View v) {
			Intent intent = new Intent();
			intent.setClass(MainActivity.this, GetMusicItemActivity.class);
			Bundle bundle = new Bundle();
			bundle.putString("name", "春暖花开");
			intent.putExtras(bundle);
			startActivity(intent);
		}

	}

	class  QueryDatabaseListener implements OnClickListener{

		@Override
		public void onClick(View v) {
			Log.d("name", "---------------1111");
			DBHelper dbHelper = new DBHelper(MainActivity.this, "", 1);
			Cursor c = dbHelper.queryObject();
			dbHelper.getReadableDatabase();
			if(c.moveToNext()) {
				for (int i = 0; i < c.getCount(); i++) {
					int id = c.getInt(c.getColumnIndex("id"));
		    	    String musicName = c.getString(c.getColumnIndex("musicName"));
		    	    System.out.println("mid----------------->" +id);
					System.out.println("mname----------------->" +musicName);
	        	    MusicInfo musicInfo = new MusicInfo();
	        	    musicInfo.setMusicId(id);
	        	    musicInfo.setMusicName(musicName);
	        	    musicList.add(musicInfo);
				}
			}
			for (int i = 0; i < musicList.size(); i++) {
				MusicInfo mi = new MusicInfo();
				mi = (MusicInfo)musicList.get(i);

			}
		}

	}

	class  CreateDatabaseListener implements OnClickListener{

		@Override
		public void onClick(View v) {
			Log.d("name", "---------------");
			DBHelper dbHelper = new DBHelper(MainActivity.this, "", 1);
			dbHelper.getReadableDatabase();
		}

	}

	class  InsertDatabaseListener implements OnClickListener{

		@Override
		public void onClick(View v) {
			Log.d("name", "---------------");
			DBHelper dbHelper = new DBHelper(MainActivity.this, "", 1);
			dbHelper.getReadableDatabase();
			ContentValues values = new ContentValues();
			String s [] = {"千里之外","春暖花开","黑色幽默","威廉古堡","世界末日",
							"三年二班","以父之名", "想象之中", "断桥残雪", "清明雨上",
							"星月神话", "单身情歌", "千千阙歌", "同桌的你", "你的样子"};
//			String s [] = {"aaaa","bbbb","cccc","dddd","eeee"
//					};
			String string = "";
			for(int i = 1; i<=15 ;i++){
				values.put("id", i);
				 byte[] val = new byte[s[i-1].length()];
				try {
					val = s[i-1].getBytes("UTF-8");
					string = new String(val,"UTF-8");
				} catch (UnsupportedEncodingException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				values.put("musicName", string);
				dbHelper.insert(values);
			}

//			values.put("id", "千里之外");
//			values.put("2", "春暖花开");
//
//			values.put("3", "黑色幽默");
//			values.put("4", "威廉古堡");
//			values.put("5", "世界末日");
//			values.put("6", "三年二班");
//			values.put("7", "以父之名");
//			values.put("8", "想象之中");
//			values.put("9", "断桥残雪");
//			values.put("10", "清明雨上");
//			values.put("11", "星月神话");
//			values.put("12", "单身情歌");
//			values.put("13", "千千阙歌");
//			values.put("14", "同桌的你");
//			values.put("15", "你的样子");

		}

	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}
时间: 2024-09-20 03:57:27

android虚拟机 连接本地pc上的Mysql的相关文章

android localsocket 连接本地socket报Permission denied异常

问题描述 android localsocket 连接本地socket报Permission denied异常 LocalSocket socket = new LocalSocket(); LocalSocketAddress addr = new LocalSocketAddress("netcontrol", LocalSocketAddress.Namespace.RESERVED); socket.connect(addr); socket.close(); 本地服务端已经配

1、win10下连接本地系统上的Linux操作系统(分别以Nat方式和桥接模式实现)

1.win10下连接本地系统上的Linux操作系统(分别以Nat方式和桥接模式实现) 一.准备知识:win10下打开Administrator的方式 在win10操作系统中,Administrator默认是隐藏和关闭的,若想使用管理员权限,需要使用cmd(以管理员方式运行)执行如下命令: net user administrator /active:yes 截图:   在执行完成命令之后,进入"控制面板\用户帐户\用户帐户\管理帐户",会出现一下界面(多出了另一个Administrat

.net 连接阿里云上的mysql数据库一直报错

问题描述 .net 连接阿里云上的mysql数据库一直报错 代码如下: using MySql.Data; using MySql.Data.MySqlClient; static void Main(string[] args) { string str = "Database=chu;Data Source=rdsja29d3bs0j0z1jg55.mysql.rds.aliyuncs.com;Port=3306;User Id=XXX;Password=XXX;Charset=utf8&q

Tableau如何连接其他电脑上的mysql数据库

在别的电脑上用Tableau,如何连接到自己电脑的mysql 数据库, 服务器名.用户名和密码该如何填 首先,需要在mysql中创建一个允许远程连接的账户,例如 mysql> grant all privileges on *.* to username@'%'  identified by 'password'; mysql> flush privileges; 这样就设置好了远程连接的账户,其中username是用户名,password是密码:然后就用改账户的信息在远程连接了. 但是还需要

Android webview打开本地图片上传实现代码

Webview打开本地图片选择器十分之麻烦,其在安卓系统3x 4x 5x上的行为都不同,处理也不同,所以之前差点崩溃.经过测试和完善,最终其在各个版本上都能完美工作. 直接上代码 package com.testandroid.webview; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.support.v7.app.AlertDialog; imp

微软发政府版Office365 支持本地PC

近日,据国外媒体报道,微软日前在官方Office博客中宣布正式推出针对美国政府机关的Office 365政府版.而值得一提的是,微软今年3月宣布将Office 365价格下调20%. 事实上,早在今年3月就有消息称微软将推出定制版Office 365的消息.而此次针对美国政府机构推出Office 365将是一个新的多用户服务,即用户可以在一个隔离的社区云中存储美国政府的数据.同其它Office 365服务一样,该政府版同样包括Exchange Online.Lync Online.SharePo

在PC上运行Android游戏

自从运行谷歌 Android 系统的手机大行其道之后,不少朋友都幻想过在普通的 PC 电脑,或者说 Windows 系统上运行 Android 操作系统,虽然有不少软件都号称可以做到运行 Android 系统的效果,不过期流畅度和实用度就真的不敢恭维. 最近,一款备受关注的软件--BlueStacks App Player,号称可以在任何设备上流畅运行 Android 程序,到底这款 BlueStacks App Player 能不能让我们的 PC 机吃上 Android 的"冰淇淋"

php连接不上数据库mysql

问题描述 php连接不上数据库mysql 我在本地windows系统上搭了apache和php和mysql的环境. 使用如下代码: $link=mysql_connect('localhost','用户名','password'); if(!$link) echo"failed!"; else echo"success!"; mysql_close(); 页面显示failed. 救命~弄了一下午了,求高手指点. 错误排查: navicat能成功连接数据库 端口是33

移动开发-android虚拟机在eclipse上的adb一直的断开

问题描述 android虚拟机在eclipse上的adb一直的断开 在eclipse安装的android虚拟机,在开发过程中,老是在console中提示"Adb connection Error:远程主机强迫关闭了一个现有的连接 Connection attempts: 1 [2013-09-14 18:47:21 - DeviceMonitor] Connection attempts: 2 [2013-09-14 18:47:23 - DeviceMonitor] Connection at