JavaでWebアプリを作ってみよう!初心者向け開発ガイド

Java

はじめに:Webアプリ開発で広がるJavaの世界

「Javaを勉強してみたけど、何を作ったらいいかわからない」「実際にWebアプリを作ってみたい」

そんな初心者の方にぴったりなのが、Javaを使ったWebアプリ開発です。実際のユーザーに使ってもらえるアプリを作ることで、実践的なスキルが身につきます。

この記事では、JavaでWebアプリを作るための手順を、環境構築から実装、デバッグまで初心者向けに解説します。


Step1:開発環境を整えよう

必要なツール

ツール目的
JDKJavaの開発環境
Eclipse or IntelliJJava用の統合開発環境(IDE)
Apache TomcatWebアプリを動かすサーバ
MySQL or H2データを保存するデータベース

セットアップ手順

  1. JDKを公式サイトからダウンロードしインストール
  2. EclipseやIntelliJをインストール
  3. Tomcatをダウンロードし、IDEに設定
  4. プロジェクトの作成(Java Web Projectを選択)

Step2:作るWebアプリのイメージを決めよう

今回は、**簡単な「ユーザー登録&ログイン機能付きメモアプリ」**を作ってみましょう。

機能一覧

  • ユーザー登録
  • ログイン・ログアウト
  • メモの登録・一覧表示・削除

Step3:データベース設計

テーブル設計

ユーザーテーブル(users)

フィールド内容
idint自動採番ID
usernamevarcharユーザー名
passwordvarcharパスワード

メモテーブル(memos)

フィールド内容
idint自動採番ID
user_idint所有者のID
contenttextメモの内容

Step4:Javaコードを書こう(JSP+Servlet編)

1. ユーザー登録

register.jsp

<form method="post" action="RegisterServlet">
ユーザー名: <input type="text" name="username"><br>
パスワード: <input type="password" name="password"><br>
<input type="submit" value="登録">
</form>

RegisterServlet.java

String username = request.getParameter("username");
String password = request.getParameter("password");

Connection conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASS);
PreparedStatement ps = conn.prepareStatement("INSERT INTO users(username, password) VALUES (?, ?)");
ps.setString(1, username);
ps.setString(2, password);
ps.executeUpdate();

2. ログイン処理

login.jsp

<form method="post" action="LoginServlet">
ユーザー名: <input type="text" name="username"><br>
パスワード: <input type="password" name="password"><br>
<input type="submit" value="ログイン">
</form>

LoginServlet.java

String username = request.getParameter("username");
String password = request.getParameter("password");

PreparedStatement ps = conn.prepareStatement("SELECT * FROM users WHERE username=? AND password=?");
ps.setString(1, username);
ps.setString(2, password);
ResultSet rs = ps.executeQuery();

if(rs.next()) {
session.setAttribute("userId", rs.getInt("id"));
response.sendRedirect("memo.jsp");
} else {
out.println("ログイン失敗");
}

3. メモの登録・一覧表示

memo.jsp

<form method="post" action="AddMemoServlet">
<textarea name="content"></textarea><br>
<input type="submit" value="メモ追加">
</form>

<%-- 登録済みメモ一覧を表示 --%>
<%
int userId = (int) session.getAttribute("userId");
PreparedStatement ps = conn.prepareStatement("SELECT * FROM memos WHERE user_id=?");
ps.setInt(1, userId);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
out.println("<p>" + rs.getString("content") + "</p>");
}
%>

Step5:デザインを整えよう

Bootstrapを使って見た目を整える

CDNを使えば簡単に利用可能です。

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">

フォームやボタンにBootstrapのクラスを追加するだけで、見栄えがぐっと良くなります


Step6:エラーとデバッグのポイント

よくあるエラー原因対処法
HTTP 404エラーURL設定ミスweb.xmlとServlet設定を見直す
ClassNotFoundExceptionJDBCドライバが無い.jarファイルの追加
NullPointerExceptionsessionやDBの変数がnullif文でnullチェックを入れる

Step7:まとめと次のステップ

今回学んだこと

  • Javaを使ったWebアプリの開発フロー
  • サーブレットやJSPの使い方
  • データベースとの連携

Webアプリを作れるようになると、就職・転職活動でも非常に有利です!


学習のおすすめステップ

「Webアプリ開発をもっと深く学びたい」「一人では不安…」そんな人は、以下のステップがぴったり!

書籍で学ぶ

絶対にJavaプログラマーになりたい人へ。

Javaを基礎から体系的に学べる名著。

サポート付きで学ぶ

サイゼントアカデミー

現役エンジニアがマンツーマンで指導。Webアプリ制作と就職支援の両方をサポート!

コメント

タイトルとURLをコピーしました