andriod与数据库

创建数据库:使用 SQLiteOpenHelper 创建和管理数据库。
操作数据库:通过 SQLiteDatabase 类提供的 API 进行增删改查操作。

public class MyDatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydb.db";
private static final int DATABASE_VERSION = 1;

public MyDatabaseHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
    // 创建表
    db.execSQL("CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY, name TEXT)");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // 升级表结构
}

}

准备Web服务:在服务器端(如 PHP、Node.js、Python 等)创建 RESTful API。
发送HTTP请求:使用 Retrofit、OkHttp 或者 Volley 等库从 Android 应用发送 HTTP 请求。
// 使用 Retrofit 发送 POST 请求示例
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://api.example.com/")
.addConverterFactory(GsonConverterFactory.create())
.build();

MyApiService service = retrofit.create(MyApiService.class);
Call call = service.saveData(new MyRequestBody());

call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
if (response.isSuccessful()) {
// 处理成功响应
}
}

@Override
public void onFailure(Call<MyResponse> call, Throwable t) {
    // 处理失败情况
}

});

建立连接:编写代码以建立与 MySQL 数据库的连接。
// 示例代码
String url = "jdbc:mysql://localhost:3306/mydatabase";
String user = "root";
String password = "password";

try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, user, password);
// 执行查询或更新操作
} catch (Exception e) {
e.printStackTrace();
}

配置 Firebase:在 Firebase 控制台中添加项目并获取配置文件。
读写数据:使用 Firebase SDK 在 Android 应用中读取和写入数据。
// 初始化 Firebase 实例
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");

// 写入数据
myRef.setValue("Hello, World!");

// 读取数据
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String value = dataSnapshot.getValue(String.class);
Log.d("TAG", "Value is: " + value);
}

@Override
public void onCancelled(DatabaseError error) {
    Log.w("TAG", "Failed to read value.", error.toException());
}

});

posted @   sword_kong  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示