`
pengfeifei26
  • 浏览: 245585 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

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;
	}

}


分享到:
评论

相关推荐

    android连接mysql数据库例子

    在Android应用开发中,连接MySQL数据库是常见的需求,特别是在构建需要后台数据支持的应用时。这里我们将探讨如何在Android客户端通过网络连接到远程MySQL服务器,并执行相关的数据库操作。 首先,理解客户端-...

    android stuido 连接mysql数据库

    在Android Studio中连接MySQL数据库与在Eclipse中的过程有所不同,主要因为Android是运行在设备或模拟器上,而这些环境通常不具备直接连接远程数据库的能力。为了解决这个问题,我们需要使用额外的技术和注意事项。...

    加入数据库mysql实现android注册登陆功能的客户端服务器源码与解析

    综上所述,本资源涵盖了从Android客户端到服务器端的完整流程,包括连接MySQL数据库、处理注册和登录请求的关键技术和实践,是学习和研究移动应用数据库集成的好材料。通过深入理解和实践这些代码,开发者可以提升...

    加入数据库mysql实现android注册登陆功能的客户端服务器源码

    在Android应用开发中,将用户注册和登录功能与MySQL数据库集成是常见的需求,这使得用户信息可以在服务器端存储和管理,提高数据安全性。本资源提供了一套完整的客户端服务器源码,帮助开发者理解如何实现这一功能。...

    Android+Mysql.rar

    在这个名为"Android+Mysql.rar"的压缩包中,包含了一套完整的Android应用程序开发项目,重点在于如何在Android平台上与MySQL数据库进行交互。这个项目旨在帮助开发者学习如何在Eclipse集成开发环境中构建一个集成...

    Android连接MySQL方法

    1. **Android与服务器通信**:在Android应用中,我们不能直接连接本地或远程的MySQL数据库,因为Android的安全策略不允许在应用中直接使用Socket进行网络通信。通常我们会使用HTTP或HTTPS协议通过Web服务(如RESTful...

    android学生信息管理系统源码(含数据库脚本).zip

    总结来说,这个Android学生信息管理系统源码展示了如何结合Java编程语言、Android框架和MySQL数据库,实现一个具有人脸识别功能的高效信息管理工具。开发者可以通过研究这个项目,学习到Android应用开发、数据库设计...

    Android通过PHP连接mysql

    在Android设备或模拟器上安装你的应用,并在本地服务器上启动PHP和MySQL服务。 2. **Android客户端代码**:在Android应用中,你需要使用`HttpURLConnection`或`OkHttp`库来发起HTTP请求。创建一个URL指向PHP脚本,...

    android4.2_mysql

    在Android平台上运行MySQL数据库是一个复杂的过程,特别是在较旧的版本如Android 4.2上。以下是一些关于如何移植MySQL到Android 4.2的知识点,以及可能涉及的关键步骤: 1. **Android与MySQL的兼容性**:Android...

    学生选课APP系统设计与实现-数据库代码

    - **SQL查询**:开发人员需要编写SQL语句来创建、更新、读取和删除数据库中的数据。例如,创建表结构,执行查询以获取课程列表,更新学生的选课状态等。 5. **数据交互与安全性**: - **API设计**:为了使客户端...

    android备忘录数据库存储到本地定时提醒.zip

    这篇内容将详细解析Android备忘录应用中数据库存储到本地以及定时提醒的实现方式。首先,我们要理解Android系统中如何处理数据存储,尤其是对于备忘录这类需要持久化存储的应用。 1. 数据库存储: Android中最常用...

    在ANDROID中的MYSQL数据搜索RECYCLEVIEW源代码.zip

    从MySQL数据库中获取数据并显示在RecyclerView中 用户可以按名称搜索数据或按类别筛选数据 查看每个项目的详细信息 开发工具: Android Studio, XAMPP 编程语言: Java: 用于应用逻辑和字段验证 XML: 用于界面设计和...

    qt andriod mysql

    - 在Android模拟器或真实设备上运行你的应用程序,确保能够成功连接到MySQL数据库并执行查询。 - 注意,Android设备可能需要通过网络连接到远程MySQL服务器,或者需要在设备上运行本地MySQL服务(例如使用Docker...

    XE5 android 连接数据库

    - **模拟器和真机调试**:XE5支持在Android模拟器和物理设备上进行调试,确保应用程序在不同环境下正常运行。 7. **性能优化**: - **数据分页**:对于大量数据,为了提高性能和用户体验,通常需要实现数据分页,...

    加入数据库mysql实现android注册登陆功能的客户端服务器源码与解析-xiaofei小飞

    总之,这个项目涵盖了Android应用与MySQL数据库交互的基础知识,包括客户端UI设计、网络请求、数据序列化、服务器端处理、数据库操作以及安全性和错误处理。对于学习Android应用开发和数据库集成的开发者来说,这是...

    Android 如何连接 PHP, MySQL

    - 设置PHP和MySQL环境,可以在本地或远程服务器上安装XAMPP或WAMP等集成开发环境,它们包含了Apache服务器、PHP和MySQL数据库。 2. **创建MySQL数据库** - 使用phpMyAdmin或命令行工具创建数据库和表,例如: ``...

    phonegao连接mysql实现android例子

    在"phonegao连接mysql实现android例子"中,我们将探讨如何利用PhoneGap将Android应用与MySQL数据库进行交互,以及其中涉及到的关键技术点。 首先,PhoneGap与Android平台的集成是通过Cordova插件机制实现的。...

    Android高级应用源码-通过Android客户端访问web服务器,实现一个登录功能,服务端+数据库+安卓端.zip

    这个项目涵盖了Android应用开发中的多个核心领域,包括网络通信、数据库交互、用户界面设计以及安全性考量。通过这个项目,开发者不仅可以提升Android应用开发技能,还能深入理解前后端协同工作的方式。

    基于android校园外卖跑腿系统源码数据库.zip

    可能使用的关系型数据库如MySQL或非关系型数据库如MongoDB,用于存储和检索数据。ORM(Object-Relational Mapping)框架如Hibernate或MyBatis可以帮助开发者简化数据库操作。 6. **RESTful API**: 为了实现前后端分离...

Global site tag (gtag.js) - Google Analytics