はじめに
このプロジェクトでは、JavaBean を使ってリクエストから複数のパラメータを直接受け取る方法を学びます。ログインページに複数の入力フィールドを持つフォームがあり、バックエンドが JavaBean オブジェクトを使ってフォームデータを受け取り処理するログインプロセスを実装します。
👀 プレビュー
ログインページ

ログイン結果

🎯 タスク
このプロジェクトで学ぶことは以下の通りです。
- ユーザ情報を表す
UserVOクラスを実装し、リクエストからパラメータを受け取る方法 - ログインリクエストを処理し、
UserVOオブジェクトを使ってパラメータを受け取るUserControllerクラスを実装する方法 - アプリケーションをテストし、受け取ったパラメータがバックエンドコンソールに正しく表示されることを確認する方法
🏆 成果
このプロジェクトを完了すると、以下のことができるようになります。
- リクエストから複数のパラメータを表し受け取る JavaBean クラスを作成する
- Spring MVC を使って HTTP リクエストを処理し、受け取ったデータを処理する
- アプリケーションをテストし、期待される動作を確認する
UserVO クラスを実装する
このステップでは、リクエストから複数のパラメータを受け取るためのUserVOクラスを実装する方法を学びます。
org.labex.voパッケージに移動し、UserVOという名前の新しい Java クラスを作成します。UserVOクラスで、次のような private 属性を宣言します。username:ユーザー名を格納するStringpassword:パスワードを格納するString
usernameとpassword属性の getter と setter メソッドを生成します。toString()メソッドを実装して、UserVOオブジェクトの文字列を返すようにします。
あなたのUserVO.javaファイルはこのようになるはずです。
package org.labex.vo;
public class UserVO {
private String username;
private String password;
@Override
public String toString() {
return "UserVO{" +
"username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
UserController クラスを実装する
このステップでは、ログインリクエストを処理し、UserVOオブジェクトを使ってパラメータを受け取るためのUserControllerクラスを実装する方法を学びます。
org.labex.controllerパッケージに移動し、UserControllerという名前の新しい Java クラスを作成します。UserControllerクラスに@RestControllerを付与して、Spring MVC コントローラにします。- "/login"エンドポイントへの HTTP POST リクエストを処理する
login()というメソッドを実装します。 login()メソッドに@PostMapping("/login")を付与して、それを"/login"エンドポイントにマッピングします。login()メソッドに 1 つのパラメータを宣言し、それはUserVOオブジェクトでなければなりません。login()メソッドの中で、受け取ったUserVOオブジェクトをSystem.out.println()を使ってバックエンドコンソールに出力します。UserVOオブジェクトからのusernameをレスポンスとして返します。
あなたのUserController.javaファイルはこのようになるはずです。
package org.labex.controller;
import org.labex.vo.UserVO;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
@PostMapping("/login")
public String login(UserVO userVO) {
System.out.println(userVO);
return userVO.getUsername();
}
}
これで、UserVOクラスとUserControllerクラスの実装が完了しました。次のステップでは、アプリケーションをテストします。
アプリケーションをテストする
アプリケーションをテストするには、次の手順に従います。
- ターミナルで、次のコマンドを使って
SpringMVCJavaBeanプロジェクトディレクトリに移動します。
cd ~/project/SpringMVCJavaBean/
- Web アプリケーションが実行されていることを確認します。次のコマンドを実行することでアプリケーションを起動できます。
mvn clean tomcat7:run
Web ブラウザを開き、
http://localhost:8080/login.jspにアクセスします。ログインページが表示されるはずです。ユーザー名とパスワードを入力し、「Login」ボタンをクリックします。
バックエンドコンソールには、受け取った
UserVOオブジェクトが次のような出力と同じように表示されるはずです。
UserVO{username='taylorJoy', password='123'}
- サーバーからのレスポンスはユーザー名であり、Web ページに表示されます。
おめでとうございます!あなたは正常に JavaBean 複数パラメータプロジェクトを実装しました。
まとめ
おめでとうございます!このプロジェクトを完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を行って練習することができます。



