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 Studio中连接MySQL数据库与在Eclipse中的过程有所不同,主要因为Android是运行在设备或模拟器上,而这些环境通常不具备直接连接远程数据库的能力。为了解决这个问题,我们需要使用额外的技术和注意事项。...
综上所述,本资源涵盖了从Android客户端到服务器端的完整流程,包括连接MySQL数据库、处理注册和登录请求的关键技术和实践,是学习和研究移动应用数据库集成的好材料。通过深入理解和实践这些代码,开发者可以提升...
在Android应用开发中,将用户注册和登录功能与MySQL数据库集成是常见的需求,这使得用户信息可以在服务器端存储和管理,提高数据安全性。本资源提供了一套完整的客户端服务器源码,帮助开发者理解如何实现这一功能。...
在这个名为"Android+Mysql.rar"的压缩包中,包含了一套完整的Android应用程序开发项目,重点在于如何在Android平台上与MySQL数据库进行交互。这个项目旨在帮助开发者学习如何在Eclipse集成开发环境中构建一个集成...
1. **Android与服务器通信**:在Android应用中,我们不能直接连接本地或远程的MySQL数据库,因为Android的安全策略不允许在应用中直接使用Socket进行网络通信。通常我们会使用HTTP或HTTPS协议通过Web服务(如RESTful...
总结来说,这个Android学生信息管理系统源码展示了如何结合Java编程语言、Android框架和MySQL数据库,实现一个具有人脸识别功能的高效信息管理工具。开发者可以通过研究这个项目,学习到Android应用开发、数据库设计...
在Android设备或模拟器上安装你的应用,并在本地服务器上启动PHP和MySQL服务。 2. **Android客户端代码**:在Android应用中,你需要使用`HttpURLConnection`或`OkHttp`库来发起HTTP请求。创建一个URL指向PHP脚本,...
在Android平台上运行MySQL数据库是一个复杂的过程,特别是在较旧的版本如Android 4.2上。以下是一些关于如何移植MySQL到Android 4.2的知识点,以及可能涉及的关键步骤: 1. **Android与MySQL的兼容性**:Android...
- **SQL查询**:开发人员需要编写SQL语句来创建、更新、读取和删除数据库中的数据。例如,创建表结构,执行查询以获取课程列表,更新学生的选课状态等。 5. **数据交互与安全性**: - **API设计**:为了使客户端...
这篇内容将详细解析Android备忘录应用中数据库存储到本地以及定时提醒的实现方式。首先,我们要理解Android系统中如何处理数据存储,尤其是对于备忘录这类需要持久化存储的应用。 1. 数据库存储: Android中最常用...
从MySQL数据库中获取数据并显示在RecyclerView中 用户可以按名称搜索数据或按类别筛选数据 查看每个项目的详细信息 开发工具: Android Studio, XAMPP 编程语言: Java: 用于应用逻辑和字段验证 XML: 用于界面设计和...
- 在Android模拟器或真实设备上运行你的应用程序,确保能够成功连接到MySQL数据库并执行查询。 - 注意,Android设备可能需要通过网络连接到远程MySQL服务器,或者需要在设备上运行本地MySQL服务(例如使用Docker...
- **模拟器和真机调试**:XE5支持在Android模拟器和物理设备上进行调试,确保应用程序在不同环境下正常运行。 7. **性能优化**: - **数据分页**:对于大量数据,为了提高性能和用户体验,通常需要实现数据分页,...
总之,这个项目涵盖了Android应用与MySQL数据库交互的基础知识,包括客户端UI设计、网络请求、数据序列化、服务器端处理、数据库操作以及安全性和错误处理。对于学习Android应用开发和数据库集成的开发者来说,这是...
- 设置PHP和MySQL环境,可以在本地或远程服务器上安装XAMPP或WAMP等集成开发环境,它们包含了Apache服务器、PHP和MySQL数据库。 2. **创建MySQL数据库** - 使用phpMyAdmin或命令行工具创建数据库和表,例如: ``...
在"phonegao连接mysql实现android例子"中,我们将探讨如何利用PhoneGap将Android应用与MySQL数据库进行交互,以及其中涉及到的关键技术点。 首先,PhoneGap与Android平台的集成是通过Cordova插件机制实现的。...
这个项目涵盖了Android应用开发中的多个核心领域,包括网络通信、数据库交互、用户界面设计以及安全性考量。通过这个项目,开发者不仅可以提升Android应用开发技能,还能深入理解前后端协同工作的方式。
可能使用的关系型数据库如MySQL或非关系型数据库如MongoDB,用于存储和检索数据。ORM(Object-Relational Mapping)框架如Hibernate或MyBatis可以帮助开发者简化数据库操作。 6. **RESTful API**: 为了实现前后端分离...