JavaのGETとPOSTの違いとは?HTMLフォームのmethodを初学者向けに整理する

最終更新日

Schoo Java入門 中級 第4回 Webアプリケーションの動作原理と画面連携

本記事は、Schooの「Java入門 中級【2026年版】」第4回「Webアプリケーションの動作原理と画面連携」を学ぶ前後に、HTMLフォームの method 属性で指定するGETとPOSTの違いを整理したい方向けの記事です。

フォーム送信では、入力した値をサーバーへ送ります。このとき、method="get"method="post" のどちらを指定するかで、値の送り方と向いている用途が変わります。

Schoo コースページ:Java入門 中級【2026年版】

GETとPOSTはフォームの送信方法

HTMLフォームでは、form タグの method 属性で送信方法を指定します。

<form action="search.jsp" method="get">
    <input type="text" name="keyword">
    <button type="submit">Search</button>
</form>

method="get" と書くとGET送信、method="post" と書くとPOST送信になります。どちらもサーバーへ値を送るための方法ですが、送られ方が違います。

図解:GETとPOSTは値の送り方が違う
GET
ブラウザのURL欄
/search.jsp?keyword=java
送った値がURLの後ろに付く
POST
リクエストの本文
keyword=java
送った値はURLではなく本文側に入る
GETはURLを見れば送信内容が分かりやすく、POSTはフォームの登録や更新のように本文として送る場面で使われます。

GETはURLに条件を付けて送る

GETでは、入力された値がURLの後ろに付いて送信されます。検索や一覧の絞り込みのように、「この条件で結果を見たい」という場面でよく使われます。

<form action="search.jsp" method="get">
    <input type="text" name="keyword">
    <button type="submit">Search</button>
</form>

たとえば keywordjava と入力して送信すると、URLは次のような形になります。

search.jsp?keyword=java
図解:GETではURLに条件が残る
https://example.com/search.jsp?keyword=java&level=beginner
search.jsp
送信先
keyword=java
検索キーワード
level=beginner
検索条件
URLに残ってもよい検索条件や絞り込み条件は、GETで扱うと動きが理解しやすくなります。

URLに条件が残るため、同じ検索結果をもう一度開いたり、URLを共有したりしやすいのがGETの特徴です。

POSTはリクエストの本文に入れて送る

POSTでは、入力された値はURLの後ろではなく、リクエストの本文側に入って送信されます。会員登録、問い合わせ、コメント投稿のように、入力内容をサーバー側で登録・更新する場面でよく使われます。

<form action="entry.jsp" method="post">
    <input type="text" name="userName">
    <input type="email" name="email">
    <button type="submit">Register</button>
</form>

POSTにしても、値を受け取る側の考え方は大きく変わりません。フォームの name 属性に付けた名前を使って、サーバー側で値を取り出します。

図解:methodを見ると送信の性質が分かる
検索フォーム
<form action=”search.jsp” method=”get”>
条件を指定して結果を見る
例:商品検索、記事検索、一覧の絞り込み
登録フォーム
<form action=”entry.jsp” method=”post”>
入力内容をサーバーへ送る
例:会員登録、問い合わせ、コメント投稿
フォームを見るときは、まずactionで送信先を見て、次にmethodで送信の種類を確認します。

使い分けは「結果を見る」か「内容を送る」かで考える

初学者のうちは、次のように考えると整理しやすいです。

  • 検索条件や絞り込み条件を送るならGET
  • 登録、更新、問い合わせ、コメント投稿ならPOST
  • URLに入力内容が見えてよいものはGETを検討する
  • 入力内容を処理として送るものはPOSTを検討する

GETは「条件をURLに付けて結果を見る」、POSTは「入力内容をリクエスト本文として送る」と押さえると、フォームの読み方が分かりやすくなります。

POSTなら安全という意味ではない

POSTはURLに値が表示されにくい送信方法ですが、それだけで安全になるわけではありません。通信内容を守るにはHTTPSが必要ですし、サーバー側では入力チェックも必要です。

そのため、GETとPOSTは「安全かどうか」だけで選ぶものではありません。送信内容の性質と、画面の目的に合わせて使い分けます。

確認問題

次の3つの画面では、GETとPOSTのどちらを使うと自然か考えてください。

  1. 商品名を入力して、商品一覧を検索する画面
  2. 名前とメールアドレスを入力して、問い合わせを送信する画面
  3. カテゴリを選んで、記事一覧を絞り込む画面

演習後の確認:こちらのページを使って、自分で考えた内容を見直せます。

まとめ

  • GETとPOSTはフォームの送信方法
  • GETは送信内容がURLの後ろに付く
  • POSTは送信内容がリクエスト本文側に入る
  • 検索や絞り込みはGET、登録や送信はPOSTで考えると整理しやすい

関連する記事

シェアする