一、实现方法:
1.导入连接数据库所使用的jar包
2.在主布局文件中添加 <uses-permission android:name="android.permission.INTERNET"/>获得访问网络的权限
3.新建一个java文件实现数据库的连接
package com.example.myapplication;import android.util.Log;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;
import java.sql.SQLException;import java.util.ArrayList;import java.util.List;
/**
* 数据库工具类:连接数据库用、获取数据库数据用
* 相关操作数据库的方法均可写在该类
*/public class db {
private static String driver = "com.mysql.jdbc.Driver";
// MySql驱动
// private static String url = "jdbc:mysql://localhost:3306/map_designer_test_db";
private static String user = "root";// 用户名
private static String password = "zhangziyi1670";// 密码
private static Connection getConn(String dbName) {
Connection connection = null;
try {
Class.forName(driver);// 动态加载类
String ip = "192.168.1.7";// 写成本机地址,不能写成localhost,同时手机和电脑连接的网络必须是同一个
// 尝试建立到给定数据库URL的连接
connection = DriverManager.getConnection("jdbc:mysql://" + ip + ":3306/" + dbName,
user, password + "&useSSL=false&serverTimezone=UTC&useSSL=false&serverTimezone=UTC");
} catch (Exception e) {
e.printStackTrace();
}
return connection;
}
public static List<CostBean> search(String time,String area){
List<CostBean>list=new ArrayList<CostBean>();
Connection connection = getConn("pachong");
try {
// mysql简单的查询语句。这里是根据MD_CHARGER表的NAME字段来查询某条记录
String sql = "select * from todaydata_copy1 where updateDate = ? and provinceid = ? ";// String sql = "select * from MD_CHARGER";
if (connection != null){// connection不为null表示与数据库建立了连接
PreparedStatement ps = connection.prepareStatement(sql);
if (ps != null){
// 设置上面的sql语句中的?的值为name
ps.setString(1, time);
ps.setString(2,area);
// 执行sql查询语句并返回结果集
ResultSet rs = ps.executeQuery();
{
// 注意:下标是从1开始的
for (int i = 1;i <= count;i++){
String time1=rs.getString("updateData");
String area1=rs.getString("provinceid");
String conformednum=rs.getString("confirmedNum");
CostBean costBean=new CostBean(time1,area1,conformednum);
list.add(costBean);
}
}
}else {
return null;
}
}else {
return null;
}
}else {
Log.e("message","con未连接成功");
return null;
}
}catch (SQLException e){
e.printStackTrace();
Log.e("DBUtils","异常:" + e.getMessage());
return null;
}
}
}