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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 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;
	}

}

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
20天前
|
关系型数据库 MySQL 网络安全
有关使用Navicat 无法成功连接腾讯云服务器上Mysql的问题解决
这篇文章提供了解决Navicat无法连接腾讯云服务器上MySQL问题的步骤,包括调整防火墙设置、更新MySQL权限和检查远程连接配置。
有关使用Navicat 无法成功连接腾讯云服务器上Mysql的问题解决
|
10天前
|
安全 Java 关系型数据库
Java连接Mysql SSL初始化失败
Java连接Mysql SSL初始化失败
|
13天前
|
JavaScript 关系型数据库 MySQL
node连接mysql,并实现增删改查功能
【8月更文挑战第26天】node连接mysql,并实现增删改查功能
27 3
|
14天前
|
关系型数据库 MySQL Java
【Azure 应用服务】应用服务连接 Azure MySQL 一直失败,报错 Create connection error
【Azure 应用服务】应用服务连接 Azure MySQL 一直失败,报错 Create connection error
|
18天前
|
关系型数据库 MySQL 数据库
postgresql使用mysql_fdw连接mysql
通过以上步骤,你可以在PostgreSQL中访问和查询远程MySQL服务器的数据,这对于数据集成和多数据库管理非常有用。
36 0
|
20天前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用问题之连接到MySQL的从库时遇到其他服务也连接到了从库,该如何处理
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
20天前
|
关系型数据库 MySQL 数据库
成功解决:Navicat 连接虚拟机Docker中的mysql数据库失败(仅限某些特殊情况)
这篇文章介绍了在Ubuntu环境中使用Docker部署Flask项目的方法,包括创建测试项目、设置数据库、构建Flask和Nginx镜像以及容器编排,其中使用了MySQL 5.7作为数据库,Flask 2.0.2作为Web框架,Gunicorn 20.1.0作为应用服务器,Nginx 1.21.4作为反向代理,并解决了Navicat连接Docker中的MySQL数据库失败的问题。
|
3月前
|
Unix Linux 虚拟化
虚拟机VMware知识积累
虚拟机VMware知识积累
|
16天前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
29 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
19天前
|
编解码 Linux 虚拟化
超详细VMware虚拟机安装Win10操作系统过程图解
这篇文章提供了一个详细的VMware虚拟机安装Windows 10操作系统的图解教程,包括了从创建虚拟机到安装操作系统的全过程,以及安装后的一些基本设置,如屏幕分辨率调整等。作者还提到了后续会分享关于磁盘分区的创建过程。
超详细VMware虚拟机安装Win10操作系统过程图解

推荐镜像

更多
下一篇
DDNS