본문 바로가기
Language/Java

[Java] Java 버전별 특징 : Java 18 ( Simple Web Server, Default UTF-8, Code Snippets )

by 계범 2024. 10. 10.

Java 18 요약

Java 18은 새로운 기능과 최적화가 포함된 단기 지원 릴리스로, 여러 실험적 기능을 제공하면서 향후 Java LTS 버전에서 발전할 기능들을 미리 테스트할 수 있는 기회를 제공합니다. 특히, Simple Web Server, UTF-8 기본 인코딩, Code Snippets in Javadoc, Foreign Function & Memory API와 같은 기능들은 개발 생산성을 높이고, 자바 애플리케이션의 성능을 개선할 수 있는 도구를 제공합니다.

 

Simple Web Server

/**
 * Simple Web Server
 * 간단한 웹 서버 테스트
 *
 * 간략한 개발 및 테스트 환경에서 활용할만해보임
 * @throws IOException
 */
private static void testSimpleWebServer() throws IOException {
    // 포트 8080에서 HTTP 서버 실행
    HttpServer server = HttpServer.create(new InetSocketAddress(8080), 0);

    // '/' 경로로 들어오는 요청에 대해 간단한 응답 제공
    server.createContext("/", exchange -> {
        String response = "Hello, Simple Web Server!";
        exchange.sendResponseHeaders(200, response.getBytes().length);
        exchange.getResponseBody().write(response.getBytes());
        exchange.close();
    });

    // 서버 시작
    server.start();
    System.out.println("Server started on port 8080");
}

 

UTF-8 기본 인코딩

Java 18부터 어플리케이션의 기본 문자 인코딩으로 UTF-8을 사용합니다.

기존에는 운영체제의 로케일에 따라 기본 문자 인코딩이  달랐지만, 이제부턴 상관없이 UTF-8로 고정!

 

Code Snippet

스니팻을 통해 코드 예시를 포함할 수 있게 되었습니다.

/**
     * This method shows an example of the `@snippet` tag.
     * {@snippet :
     *       System.out.println("Hello, Java 18!");
     * }
     */
    private static void testCodeSnippet() {
        System.out.println("Hello, Java 18!");
    }

 

 

 

댓글