LoginSignup
0
0

Javaプログラミング入門:ステップ7 実践的な開発

Posted at

Javaプログラミング入門:ステップ7 実践的な開発

ステップ7では、これまで学んだ技術を統合し、実際のプロジェクトに適用していきます。具体的には、Web画面にデータを表示し、データの登録処理を行う方法を学びます。HTMLとプログラムの連携を通じて、動的なWebアプリケーションを構築します。

  1. プロジェクトに必要な技術の統合
  2. Web画面にデータを表示
  3. 登録したデータの処理
  4. HTMLとプログラムの連携

1. プロジェクトに必要な技術の統合

まず、プロジェクトで必要な技術を統合します。これには、以下の要素が含まれます。

  • Webフレームワーク: Struts、Spring MVCなど
  • データベースアクセス: JDBC、ORM(Hibernateなど)
  • フロントエンド: HTML、CSS、JavaScript

これらの技術を組み合わせることで、Webアプリケーションの基盤を構築します。

2. Web画面にデータを表示

データベースからデータを取得し、Web画面に表示する方法を学びます。

データの取得

データベースからデータを取得するために、DAO(Data Access Object)パターンを使用します。以下は、データベースから従業員リストを取得する例です。

public class EmployeeDao {
    public List<Employee> getAllEmployees() {
        List<Employee> employees = new ArrayList<>();
        // データベース接続とデータ取得のロジック
        return employees;
    }
}

データの表示

取得したデータをJSPページに表示します。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
    <title>Employee List</title>
</head>
<body>
    <h1>Employee List</h1>
    <table>
        <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Position</th>
        </tr>
        <c:forEach var="employee" items="${employeeList}">
            <tr>
                <td>${employee.id}</td>
                <td>${employee.name}</td>
                <td>${employee.position}</td>
            </tr>
        </c:forEach>
    </table>
</body>
</html>

3. 登録したデータの処理

ユーザーが入力したデータをデータベースに登録する方法を学びます。

HTMLフォームの作成
まず、データ入力フォームを作成します。

<!DOCTYPE html>
<html>
<head>
    <title>Register Employee</title>
</head>
<body>
    <h1>Register Employee</h1>
    <form action="registerEmployee" method="post">
        <label for="name">Name:</label>
        <input type="text" id="name" name="name" required><br>
        <label for="position">Position:</label>
        <input type="text" id="position" name="position" required><br>
        <input type="submit" value="Register">
    </form>
</body>
</html>

サーブレットの作成

次に、フォームデータを受け取り、データベースに保存するサーブレットを作成します。

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/registerEmployee")
public class RegisterEmployeeServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String name = request.getParameter("name");
        String position = request.getParameter("position");

        EmployeeDao employeeDao = new EmployeeDao();
        Employee employee = new Employee();
        employee.setName(name);
        employee.setPosition(position);
        employeeDao.addEmployee(employee);

        response.sendRedirect("employeeList");
    }
}

DAOの追加メソッド

DAOにデータを追加するメソッドを実装します。

public class EmployeeDao {
    // 既存のメソッド...

    public void addEmployee(Employee employee) {
        // データベース接続とデータ挿入のロジック
    }
}

4. HTMLとプログラムの連携

HTMLとJavaプログラムを連携させることで、ユーザーインターフェースとビジネスロジックを結びつけます。

フォームデータの送信

HTMLフォームからデータを送信し、サーブレットで受け取ります。フォームのaction属性には、データを処理するサーブレットのURLを指定します。method属性には、postを指定してデータを送信します。

サーブレットでのデータ処理

サーブレットでは、doPostメソッドをオーバーライドして、受け取ったデータを処理します。HttpServletRequestオブジェクトを使用して、フォームデータを取得します。

データベース操作

DAOパターンを使用して、データベース操作を抽象化します。データベース接続、データ取得、データ挿入などの操作をDAOクラスにまとめることで、ビジネスロジックとデータアクセスロジックを分離します。

結果の表示

処理が完了したら、結果をJSPページに表示します。例えば、データの登録が成功した場合、登録成功メッセージを表示するページにリダイレクトします。

以上が、実践的な開発におけるプロジェクトに必要な技術の統合、Web画面にデータを表示、登録したデータの処理、およびHTMLとプログラムの連携についての解説です。これらの手順を実践し、実際のプロジェクトに適用することで、より高度なWebアプリケーションを開発するスキルを身につけましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0