// 依賴:mysql-connector-java
String url = "jdbc:mysql://192.168.1.100:3306/dbname?useSSL=false";
Connection conn = DriverManager.getConnection(url, "user", "pwd");
// 直接執行 SQL
缺點:暴露數據庫端口/賬號、移動網絡不穩定導致連接斷開、無法應用端邏輯校驗、APK 反編譯洩露憑證。
// 服務端
@RestController
@RequestMapping("/api/student")
public class StudentController {
@Autowired StudentService service;
@GetMapping("/list") public List list() { return service.list(); }
@PostMapping("/add") public Result add(@RequestBody StudentDTO dto) { return service.add(dto); }
}
// Android 端
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://192.168.1.100:8080/")
.addConverterFactory(GsonConverterFactory.create())
.build();
StudentApi api = retrofit.create(StudentApi.class);
api.list().enqueue(new Callback>() { ... });
| 維度 | 直連 JDBC | Web Service |
|---|---|---|
| 安全性 | 極低 | 高(認證授權、加密、審計) |
| 穩定性 | 差(長連接易斷) | 高(短連接、重試、熔斷) |
| 業務邏輯 | 前端繁重 | 後端集中 |
| 部署 | 無需額外服務 | 需部署 Spring Boot/Node.js 等 |
**生產項目務必採用 Web Service 方案**,Android 僅作為表現層調用 REST/gRPC 接口。