강의실 테이블 쿼리를 위한 Statement

JavaBeginner
지금 연습하기

소개

이 프로젝트에서는 JDBC (Java Database Connectivity) 를 사용하여 Statement 객체를 통해 MySQL 데이터베이스에서 데이터를 쿼리하는 방법을 배우게 됩니다. 또한 ResultSet을 사용하여 결과 집합을 캡슐화하는 방법도 배우게 됩니다.

👀 미리보기

JDBC query preview image

🎯 과제

이 프로젝트에서 다음을 배우게 됩니다:

  • MySQL 서비스를 시작하고 데이터를 데이터베이스로 가져오는 방법
  • 새로운 Java 프로젝트 디렉토리를 생성하고 필요한 파일을 이동하는 방법
  • Statement 객체를 사용하여 JDBC 쿼리를 구현하는 방법
  • Java 애플리케이션을 컴파일하고 실행하는 방법

🏆 성과

이 프로젝트를 완료하면 다음을 수행할 수 있습니다:

  • JDBC 를 사용하여 MySQL 데이터베이스에 연결을 설정할 수 있습니다.
  • SQL 쿼리를 실행하기 위해 Statement 객체를 생성할 수 있습니다.
  • ResultSet을 사용하여 결과 집합을 캡슐화할 수 있습니다.
  • MySQL 데이터베이스에서 데이터를 검색하고 표시할 수 있습니다.

MySQL 서비스 시작 및 데이터 가져오기

이 단계에서는 MySQL 서비스를 시작하고 edusys.sql 스크립트를 MySQL 데이터베이스로 가져오는 방법을 배우게 됩니다.

  1. MySQL 서비스 시작:

    sudo service mysql start
  2. edusys.sql 스크립트를 MySQL 데이터베이스로 가져오기:

    mysql -u root < ~/project/edusys.sql
✨ 솔루션 확인 및 연습

새로운 Java 프로젝트 생성

이 단계에서는 새로운 Java 프로젝트 디렉토리를 생성하고 필요한 파일을 그 안에 이동하는 방법을 배우게 됩니다.

  1. 새로운 Java 프로젝트 디렉토리 생성:

    mkdir classroom classroom/src classroom/lib classroom/bin
  2. JDBC 드라이버 패키지를 classroom/lib 디렉토리로 이동:

    mv mysql-connector-java-8.0.21.jar ./classroom/lib
  3. JDBCQueryByStatement.java 파일을 classroom/src 디렉토리로 이동:

    mv JDBCQueryByStatement.java ./classroom/src
✨ 솔루션 확인 및 연습

Statement 를 사용하여 JDBC 쿼리 구현

이 단계에서는 Statement 객체를 사용하여 JDBC 쿼리를 구현하고 ResultSet을 사용하여 결과 집합을 캡슐화하는 방법을 배우게 됩니다.

  1. 선호하는 코드 편집기에서 JDBCQueryByStatement.java 파일을 엽니다.

  2. main() 메서드에 다음 코드를 추가합니다:

    try {
        String url = "jdbc:mysql://localhost:3306/edusys";
        String username = "root";
        String password = "";
        // Establish database connection
        Connection connection = DriverManager.getConnection(url, username, password);
    
        // Create Statement object
        Statement statement = connection.createStatement();
    
        // Execute the query
        String sql = "SELECT * FROM classroom";
        ResultSet resultSet = statement.executeQuery(sql);
    
        // Loop through the result set
        while (resultSet.next()) {
            String building = resultSet.getString("building");
            String roomNumber = resultSet.getString("room_number");
            int capacity = resultSet.getInt("capacity");
    
            System.out.println(building + "\t" + roomNumber + "\t" + capacity);
        }
    
        // Close resources
        resultSet.close();
        statement.close();
        connection.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }

    이 코드는 MySQL 데이터베이스에 연결을 설정하고, Statement 객체를 생성하며, classroom 테이블에서 모든 데이터를 검색하기 위해 쿼리를 실행한 다음, 결과 집합을 반복하여 데이터를 출력합니다.

✨ 솔루션 확인 및 연습

애플리케이션 컴파일 및 실행

이 단계에서는 Java 애플리케이션을 컴파일하고 실행하는 방법을 배우게 됩니다.

  1. 터미널을 열고 classroom 디렉토리로 이동합니다:

    cd ~/project/classroom
  2. Java 파일 컴파일:

    javac -d bin/ src/JDBCQueryByStatement.java
  3. 애플리케이션 실행:

    java -cp bin/:lib/mysql-connector-java-8.0.21.jar JDBCQueryByStatement

    이렇게 하면 JDBCQueryByStatement 클래스가 실행되고 classroom 테이블의 데이터가 표시됩니다.

  4. 예시:

    다음 결과를 참조할 수 있습니다:

    Example query results display

축하합니다! 프로젝트를 성공적으로 완료했습니다. Statement 객체를 사용하여 MySQL 데이터베이스에서 데이터를 쿼리하고 ResultSet을 사용하여 결과 집합을 캡슐화하는 방법을 배웠습니다.

✨ 솔루션 확인 및 연습

요약

축하합니다! 이 프로젝트를 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.