畢業設計要求用Java實現群發短信並打包為EXE程序。本文對比WebService接口調用與SMSLib庫兩種主流方案,並提供打包為可執行文件的完整思路。
// 使用 OkHttp 調用典型 REST API
OkHttpClient client = new OkHttpClient();
RequestBody body = new FormBody.Builder()
.add("mobile", "13800000000")
.add("template_id", "TPL_001")
.add("params", "[\"張三\",\"123456\"]")
.build();
Request request = new Request.Builder()
.url("https://api.sms-provider.com/v1/send")
.addHeader("Authorization", "AppKey " + appKey)
.post(body)
.build();
Response response = client.newCall(request).execute();
maven-shade-plugin 或 maven-assembly-plugin).exe,可選生成安裝包(配合 Inno Setup/NSIS)| 維度 | WebService API | SMSLib + Modem |
|---|---|---|
| 開發難度 | 低 | 高 |
| 硬件成本 | 無 | 有 |
| 發送速度 | 高(百萬級/天) | 低 |
| 打包 EXE 易度 | 容易 | 困難 |
| 穩定性 | 高(SLA 保障) | 中(硬件故障率) |
結論:畢設強烈建議採用 WebService API 方案,開發效率高、打包簡單、演示效果好。僅在老師明確要求「離線/本地發送」時考慮 SMSLib。