安卓怎么显示mysql数据库的内容_安卓界面及windows相关

要在安卓上显示MySQL数据库的内容,你需要遵循以下步骤:

安卓怎么显示mysql数据库的内容_安卓界面及windows相关
(图片来源网络,侵删)

1、创建MySQL数据库

2、配置服务器以允许远程访问

3、在安卓应用中连接到MySQL数据库

4、从数据库中获取数据并在安卓界面上显示

下面是详细的步骤和代码示例:

1. 创建MySQL数据库

你需要在MySQL服务器上创建一个数据库,以下是创建数据库的SQL语句:

CREATE DATABASE mydb;

创建一个表并插入一些数据:

USE mydb;
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(255),
    age INT
);
INSERT INTO users (name, age) VALUES ('张三', 25);
INSERT INTO users (name, age) VALUES ('李四', 30);

2. 配置服务器以允许远程访问

为了确保你的Android设备可以连接到MySQL服务器,你需要在服务器上进行一些配置,编辑MySQL配置文件(例如/etc/mysql/mysql.conf.d/mysqld.cnf),并添加以下内容:

[mysqld]
bindaddress = 0.0.0.0

然后重启MySQL服务:

sudo service mysql restart

3. 在安卓应用中连接到MySQL数据库

为了在Android应用中连接到MySQL数据库,你需要使用一个支持JDBC的库,例如JDBCRDD,将JDBCRDD库添加到你的项目的build.gradle文件中:

dependencies {
    implementation 'com.github.lzyzsd:JDBCRDD:1.0.1'
}

你可以使用以下代码连接到MySQL数据库:

import com.github.lzyzsd.jdbcrdd.JdbcRDD;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        String url = "jdbc:mysql://<your_server_ip>:3306/mydb?useSSL=false";
        String user = "your_username";
        String password = "your_password";
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection connection = DriverManager.getConnection(url, user, password);
            Statement statement = connection.createStatement();
            ResultSet resultSet = statement.executeQuery("SELECT * FROM users");
            while (resultSet.next()) {
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                Log.d("User", "ID: " + id + ", Name: " + name + ", Age: " + age);
            }
            resultSet.close();
            statement.close();
            connection.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

注意:请将<your_server_ip>your_usernameyour_password替换为实际的MySQL服务器IP地址、用户名和密码。

4. 从数据库中获取数据并在安卓界面上显示

为了在安卓界面上显示数据,你可以使用ListViewRecyclerView,这里我们使用ListView作为示例:

1、在activity_main.xml布局文件中添加ListView

<ListView
    android:id="@+id/listView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

2、在MainActivity中设置ListView的适配器:

import android.os.AsyncTask;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
// ...
public class MainActivity extends AppCompatActivity {
    private ListView listView;
    private ArrayAdapter<String> adapter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        listView = findViewById(R.id.listView);
        adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1);
        listView.setAdapter(adapter);
        // ...(连接数据库的代码)
    }
    private class GetDataFromDatabase extends AsyncTask<Void, Void, ArrayList<String>> {
        @Override
        protected ArrayList<String> doInBackground(Void... voids) {
            ArrayList<String> dataList = new ArrayList<>();
            // ...(连接数据库的代码)
            while (resultSet.next()) {
                int id = resultSet.getInt("id");
                String name = resultSet.getString("name");
                int age = resultSet.getInt("age");
                dataList.add("ID: " + id + ", Name: " + name + ", Age: " + age);
            }
            return dataList;
        }
        @Override
        protected void onPostExecute(ArrayList<String> dataList) {
            super.onPostExecute(dataList);
            adapter.clear();
            adapter.addAll(dataList);
        }
    }
}

3、在需要获取数据的地方调用GetDataFromDatabase异步任务:

new GetDataFromDatabase().execute();

现在,当你运行Android应用时,你应该能在界面上看到从MySQL数据库中获取的数据。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/684242.html

(0)
未希新媒体运营
上一篇 2024-06-12 21:29
下一篇 2024-06-12 21:34

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入