はじめに
Webサービスの開発現場では、REST APIの活用が日常になっています。
本記事では、Java + Spring Bootを使ってREST APIとJSONで通信する方法を、基礎から実用レベルまで丁寧に解説します。
初心者から中級者へステップアップしたい方は、ぜひこの記事で「REST連携の勘所」を押さえてください。
目次
- REST APIとは?
- JSON通信の基本
- Spring Bootとは?
- 【基礎編】REST APIの作成(GET/POST対応)
- 【応用編】外部APIとの連携(例:天気API)
- まとめと次のステップ
1. REST APIとは?
REST(Representational State Transfer)は、HTTPを使ってリソース(データ)をやり取りする設計スタイルです。
以下のようなHTTPメソッドを使って操作します。
メソッド | 意味 | 例 |
---|---|---|
GET | 取得 | ユーザー情報を取得 |
POST | 作成 | 新規ユーザーを登録 |
PUT | 更新 | ユーザー情報を更新 |
DELETE | 削除 | ユーザーを削除 |
2. JSON通信の基本
REST APIでは、データのやり取りにJSON(JavaScript Object Notation)が一般的に使われます。
例(JSON形式)
{
"name": "Taro",
"email": "taro@example.com"
}
Spring Bootでは、Jacksonライブラリを使ってJavaオブジェクトとJSONの相互変換が可能です。
3. Spring Bootとは?
Spring Bootは、Javaのフレームワーク「Spring」をベースに、設定を最小限にしてアプリケーションをすぐに動かせる仕組みです。
特長
- 組み込みTomcatで即起動
- REST APIの構築が容易
- DI(依存性注入)による疎結合な設計が可能
4. 【基礎編】REST APIの作成(GET/POST対応)
プロジェクト作成
Spring Initializr(https://start.spring.io)で以下を選択
- Project: Maven
- Language: Java
- Dependencies: Spring Web
コントローラーの作成
@RestController
@RequestMapping("/api/users")
public class UserController {
// GETメソッド
@GetMapping("/{id}")
public User getUser(@PathVariable int id) {
return new User(id, "Taro", "taro@example.com");
}
// POSTメソッド
@PostMapping
public User createUser(@RequestBody User user) {
// 実際にはDB登録処理など
return user;
}
}
DTO(User.java)
public class User {
private int id;
private String name;
private String email;
// コンストラクタ・getter/setter 省略可能(Lombok使用可)
}
5. 【応用編】外部APIとの連携(例:天気情報取得)
RestTemplateを使って外部APIを呼び出す
@RestController
public class WeatherController {
@GetMapping("/api/weather")
public String getWeather() {
RestTemplate restTemplate = new RestTemplate();
String url = "https://api.open-meteo.com/v1/forecast?latitude=35.6895&longitude=139.6917¤t_weather=true";
return restTemplate.getForObject(url, String.class);
}
}
上記コードでは、東京都の現在の天気情報を取得しています。
レスポンスはJSON形式で返ってきます。
6. まとめと次のステップ
本記事のまとめ
- REST APIはHTTPを使ったシンプルな通信手法
- JSONはデータ交換の標準形式
- Spring Bootを使えばREST API開発が効率的に
@RestController
と@RequestMapping
で基本的なAPIを実装可能RestTemplate
を使えば外部APIとの連携も簡単!
次におすすめの記事
📌補足:このスキル、転職市場でも評価されます
REST API連携やSpring Bootの経験は、現場でも即戦力として高く評価されます。
実務経験に近い形でポートフォリオを構築し、次のキャリアアップにつなげましょう。
✅【年収800万円以上も狙える!】実力主義のIT転職を目指すなら
▶️ ハイクラス転職でキャリアを一気に加速させる方法