Programming/Java

자바의 유용한 패키지

vita12321 2023. 8. 10. 18:34
728x90
반응형

자바의 유용한 패키지(Java Useful Packages) 개발자들에게 다양하고 강력한 도구를 제공하는 라이브러리 모음입니다. 글에서는 자바에서 가장 중요하고 유용한 패키지들을 소개하고, 패키지의 핵심 기능과 사용법에 대해 상세히 알아보겠습니다. 예제 코드도 가지 살펴볼 예정입니다.


 

1. java.util 패키지

 

java.util 패키지는 자바의 핵심 라이브러리로, 주로 컬렉션(Collection), 날짜 시간(Date and Time), 난수 생성(Random) 다양한 유틸리티 클래스와 인터페이스를 포함합니다.

 

  • 컬렉션:
    List, Set, Map 등의 인터페이스와 이를 구현하는 ArrayList, HashMap, HashSet 등 다양한 데이터 구조를 제공합니다. 컬렉션은 데이터를 저장하고 관리하는데 편리한 도구로 사용됩니다.

 

예제: ArrayList 사용하기

import java.util.ArrayList;

 

public class ArrayListExample {

    public static void main(String[] args) {

        ArrayList<String> myList = new ArrayList<>();

 

        myList.add("Hello");

        myList.add("World");

 

        System.out.println(myList.get(0)); // 출력: Hello

        System.out.println(myList.get(1)); // 출력: World

    }

}

 

 

  • 날짜 및 시간:
    Date, Calendar 클래스로 기본적인 날짜 및 시간 연산을 수행할 수 있으며, Java 8부터는 LocalDate, LocalTime, LocalDateTime 등의 클래스를 활용해 더욱 직관적이고 강력한 날짜 시간 연산을 수행할 수 있습니다.

 

예제: LocalDateTime 사용하기

import java.time.LocalDateTime;

 

public class LocalDateTimeExample {

    public static void main(String[] args) {

        LocalDateTime now = LocalDateTime.now();

       

        System.out.println("현재 시간: " + now);

       

        LocalDateTime afterTwoWeeks = now.plusWeeks(2);

       

        System.out.println("이틀 후: " + afterTwoWeeks);

    }

}

 

  • 난수 생성:
    Random 클래스를 통해 난수를 생성할 수 있습니다. 때에 따라서 다양한 종류의 난수를 생성할 수 있습니다.

 

예제: Random 사용하기

import java.util.Random;

 

public class RandomExample {

    public static void main(String[] args) {

        Random random = new Random();

       

        int randomInt = random.nextInt(100); // 0 ~ 99 사이의 정수

        System.out.println("무작위 정수: " + randomInt);

       

        double randomDouble = random.nextDouble(); // 0.0 부터 1.0 사이의 실수

        System.out.println("무작위 실수: " + randomDouble);

    }

}

2. java.io 패키지

 

java.io 패키지는 파일 입출력(File I/O) 관련된 기능들을 제공합니다. 패키지를 활용하면 파일 생성, 읽기, 쓰기 다양한 작업을 손쉽게 수행할 있습니다. 주요 클래스로는 FileReader, FileWriter, BufferedReader, BufferedWriter 등이 있습니다.

 

예제: 파일 읽기

import java.io.BufferedReader;

import java.io.FileReader;

import java.io.IOException;

 

public class ReadFileExample {

    public static void main(String[] args) {

        try {

            // 파일 위치 따라서 수정

            String fileName = "/path/to/your/file.txt";

            FileReader fileReader = new FileReader(fileName);

            BufferedReader bufferedReader = new BufferedReader(fileReader);

 

            String line;

            while ((line = bufferedReader.readLine()) != null) {

                System.out.println(line);

            }

 

            bufferedReader.close();

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

}

3. java.net 패키지

 

java.net 패키지는 인터넷 프로토콜과 소켓 프로그래밍, URL 처리 네트워크 관련 기능들을 제공합니다. 예를 들어, Socket, ServerSocket 클래스를 사용하여 클라이언트와 서버 간의 통신을 구현할 있습니다.

 

예제: 간단한 HTTP 요청 보내기

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.URL;

 

public class HttpRequestExample {

    public static void main(String[] args) {

        try {

            URL url = new URL("https://api.example.com/data");

            HttpURLConnection connection = (HttpURLConnection) url.openConnection();

            connection.setRequestMethod("GET");

 

            BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));

            String inputLine;

            StringBuilder content = new StringBuilder();

 

            while ((inputLine = in.readLine()) != null) {

                content.append(inputLine);

            }

 

            in.close();

            connection.disconnect();

            System.out.println("API 응답: " + content.toString());

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

}

4. java.sql 패키지

 

java.sql 패키지는 자바에서 데이터베이스와 연동할 사용하는 JDBC(Java Database Connectivity) API 제공합니다. 패키지를 사용하면 다양한 데이터베이스 시스템에 접근하여 데이터를 조회, 추가, 수정 삭제할 있습니다. 주요 클래스로는 DriverManager, Connection, PreparedStatement, ResultSet 등이 있습니다.

 

아래 예제는 데이터베이스 "myDatabase" "users" 테이블에서 모든 유저의 이름(name) 조회합니다.

 

예제: JDBC 이용한 데이터베이스 조회

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

 

public class JdbcExample {

    public static void main(String[] args) {

        String url = "jdbc:mysql://localhost:3306/myDatabase";

        String username = "myUsername";

        String password = "myPassword";

       

        try {

            Connection connection = DriverManager.getConnection(url, username, password);

            

            String sql = "SELECT name FROM users";

            PreparedStatement pstmt = connection.prepareStatement(sql);

           

            ResultSet resultSet = pstmt.executeQuery();

           

            while (resultSet.next()) {

                System.out.println("User name: " + resultSet.getString("name"));

            }

           

            resultSet.close();

            pstmt.close();

            connection.close();

        } catch (SQLException e) {

            e.printStackTrace();

        }

    }

}

 

 

이처럼 자바의 다양한 패키지들은 개발 작업을 보다 편리하게 있도록 합니다

728x90
반응형