91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

android如何連接mysql數據庫

小億
90
2024-09-03 07:10:20
欄目: 云計算

在Android中直接連接MySQL數據庫并不是一個好主意,因為這樣會暴露數據庫的用戶名和密碼,可能導致安全問題。推薦的做法是使用Web服務(如RESTful API)作為中間層,讓Android應用程序通過HTTP請求與Web服務進行通信,然后Web服務負責與MySQL數據庫交互。

以下是使用Web服務連接MySQL數據庫的簡要步驟:

  1. 創建一個Web服務(例如,使用PHP、Node.js或Python編寫的API)。
  2. 在Web服務中,編寫代碼來處理與MySQL數據庫的連接和查詢。
  3. 將Web服務部署到服務器上,以便Android應用程序可以訪問它。
  4. 在Android應用程序中,使用網絡庫(如Retrofit、Volley或OkHttp)發起HTTP請求,與Web服務進行通信。
  5. 處理Web服務返回的數據,并在Android應用程序中顯示。

這里有一個簡單的示例,展示了如何使用PHP和MySQL創建一個Web服務,并在Android應用程序中使用Volley庫發起請求:

PHP Web服務(get_data.php):

<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 創建連接
$conn = new mysqli($servername, $username, $password, $dbname);

// 檢查連接
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 查詢數據
$sql = "SELECT id, name, email FROM users";
$result = $conn->query($sql);

$data = array();
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $data[] = $row;
    }
} else {
    echo "0 results";
}

// 關閉連接
$conn->close();

// 將數據轉換為JSON格式
echo json_encode($data);
?>

Android應用程序(使用Volley庫):

  1. 添加Volley依賴項到build.gradle文件:
dependencies {
    implementation 'com.android.volley:volley:1.2.1'
}
  1. 在Android應用程序中發起請求:
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class MainActivity extends AppCompatActivity {

    private TextView textView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.textView);

        String url = "https://yourserver.com/get_data.php";

        RequestQueue queue = Volley.newRequestQueue(this);
        StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {
                            JSONArray jsonArray = new JSONArray(response);
                            for (int i = 0; i< jsonArray.length(); i++) {
                                JSONObject jsonObject = jsonArray.getJSONObject(i);
                                String name = jsonObject.getString("name");
                                String email = jsonObject.getString("email");
                                textView.append(name + " - " + email + "\n");
                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                textView.setText("Error: " + error.getMessage());
            }
        });
        queue.add(stringRequest);
    }
}

這個示例展示了如何在Android應用程序中使用Volley庫從PHP Web服務獲取數據,并將其顯示在TextView中。請確保將URL替換為你自己的服務器地址。

0
马鞍山市| 青冈县| 西藏| 永春县| 德钦县| 湟源县| 江川县| 延长县| 区。| 荣成市| 揭阳市| 镇赉县| 巴东县| 涞源县| 武宣县| 秦皇岛市| 松潘县| 桂平市| 满洲里市| 和硕县| 林口县| 古浪县| 温泉县| 伊通| 稷山县| 克什克腾旗| 扎鲁特旗| 静安区| 清水河县| 辉南县| SHOW| 沿河| 大新县| 雷州市| 桐庐县| 长子县| 五家渠市| 囊谦县| 柳州市| 土默特左旗| 高阳县|