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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Android中模拟器如何访问本地mysql数据库 package com.game.music;import java.io.UnsupportedEncodingException;import java.
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;
	}

}

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
25天前
|
分布式计算 关系型数据库 数据处理
Dataphin常见问题之没有建表的权限如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
1月前
|
关系型数据库 MySQL 数据库连接
连接和管理RDS
连接和管理RDS
24 2
|
2月前
|
Android开发
如何用Airtest脚本无线连接Android设备?
如何用Airtest脚本无线连接Android设备?
|
1月前
|
Ubuntu 关系型数据库 MySQL
【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)
【MySQL】Navicat/SQLyog连接Ubuntu中的数据库(MySQL)
|
1月前
|
关系型数据库 MySQL 数据安全/隐私保护
关于Navicat Premium连接MySQL出现2059错误解决方法
关于Navicat Premium连接MySQL出现2059错误解决方法
|
27天前
|
SQL 关系型数据库 MySQL
阿里云MySQL数据库价格、购买、创建账号密码和连接数据库教程
阿里云数据库使用指南:购买MySQL、SQL Server等RDS实例,选择配置和地区,完成支付。创建数据库和账号,设置权限。通过DMS登录数据库,使用账号密码访问。同地域VPC内的ECS需将IP加入白名单以实现内网连接。参考链接提供详细步骤。
367 3
|
4天前
|
SQL 关系型数据库 MySQL
DQL语言之连接查询(mysql)
DQL语言之连接查询(mysql)
|
7天前
|
关系型数据库 MySQL 数据安全/隐私保护
MySQL 安装及连接
MySQL 安装及连接
24 0
|
8天前
|
缓存 Android开发 开发者
pc上使用命令给android安装apk
pc上使用命令给android安装apk
11 0
|
16天前
|
存储 关系型数据库 MySQL
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT *、分页查询的优化、合理使用连接、子查询的优化)(上)
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT *、分页查询的优化、合理使用连接、子查询的优化)(上)

推荐镜像

更多