반응형

Java의 Volatile 키워드 사용방법(예제)

1. 개요 필요한 동기화가 없으면 컴파일러, 런타임 또는 프로세서가 모든 종류의 최적화를 적용할 수 있습니다. 이러한 최적화는 일반적으로 유익하지만 때때로 미묘한 문제를 일으킬 수 있습니다. 캐싱 및 재정렬은 동시 컨텍스트에서 우리를 놀라게 할 수 있는 최적화 중 하나입니다. Java와 JVM은 메모리 순서 를 제어하는 ​​다양한 방법을 제공 하며 volatile 키워드가 그 중 하나입니다. 이 사용방법(예제)에서는 기본적이지만 Java 언어에서 자주 오해되는 개념인 volatile 키워드 에 중점을 둘 것입니다 . 먼저 기본 컴퓨터 아키텍처가 작동하는 방식에 대한 몇 가지 배경 지식부터 시작한 다음 Java의 메모리 순서에 익숙해질 것입니다. 2. 공유 멀티프로세서 아키텍처 프로세서는 프로그램 명령 실..

Spring 2022.12.21

Spring 및 JPA와의 트랜잭션

1. 개요 이 예제에서는 Spring Transactions를 구성하는 올바른 방법 , @Transactional 어노테이션 을 사용하는 방법 및 일반적인 함정에 대해 설명합니다. 핵심 지속성 구성에 대한 자세한 내용은 Spring with JPA 사용방법(예제)를 확인하세요 . 기본적으로 트랜잭션, 어노테이션 및 AOP를 구성하는 두 가지 고유한 방법이 있으며 각각 고유한 장점이 있습니다. 여기에서 보다 일반적인 어노테이션 구성에 대해 논의할 것입니다. 2. 트랜잭션 구성 Spring 3.1은 트랜잭션 지원을 활성화하기 위해 @Configuration 클래스에서 사용할 수 있는 @EnableTransactionManagement 어노테이션 을 도입합니다. @Configuration @EnableTran..

Spring 2022.12.21

IntelliJ IDEA 플러그인 작성

1. 소개 지난 몇 년 동안 JetBrains의 IntelliJ 는 Java 개발자를 위한 최고의 IDE가 되었습니다. 가장 최근 의 Java 현황 보고서 에서 IntelliJ는 응답자의 55%가 선택한 IDE로 전년도의 48%에서 증가했습니다. IntelliJ가 Java 개발자에게 매력적인 이유 중 하나는 플러그인을 사용하여 새로운 기능을 확장하고 생성할 수 있다는 것입니다. 이 예제에서는 IDE를 확장하는 몇 가지 방법을 보여주기 위해 IntelliJ 플러그인을 작성하는 방법을 살펴보겠습니다. 이 문서는 IntelliJ 플러그인에 초점을 맞추고 있지만 모든 JetBrains IDE는 공통 코드를 공유합니다. 따라서 여기에 사용된 많은 기술 을 PyCharm, RubyMine 등과 같은 다른 JetBr..

Spring 2022.12.21

Gradle을 사용하여 IntelliJ IDEA 플러그인 작성

1. 소개 지난 몇 년 동안 JetBrains의 IntelliJ 는 Java 개발자를 위한 최고의 IDE가 되었습니다. 가장 최근 의 Java 현황 보고서 에서 IntelliJ는 응답자의 61%가 선택한 IDE로 전년도의 55%에서 증가했습니다. IntelliJ가 Java 개발자에게 매력적인 이유 중 하나는 플러그인을 사용하여 새로운 기능을 확장하고 생성할 수 있다는 것입니다. 이 예제에서는 IDE를 확장할 수 있는 몇 가지 방법을 보여주기 위해 Gradle과 함께 새로운 권장 방식을 사용하여 IntelliJ 플러그인을 작성하는 방법을 살펴보겠습니다. 이 문서는 Plugin Devkit을 사용하여 동일한 플러그인을 만드는 방법을 설명 하는 이전 문서를 리믹스한 것입니다. 2. 주요 플러그인 종류 가장 일..

Spring 2022.12.21

Java에서 숫자가 양수인지 음수인지 확인

1. 개요 Java에서 Integer , Long , Float 및 Double 과 같은 유형으로 작업할 때 숫자가 양수인지 음수인지 확인하는 경우가 많습니다. 이것은 기본적이고 일반적인 숫자 연산입니다. 이 빠른 사용방법(예제)에서는 주어진 숫자가 양수인지 음수인지 확인하는 방법에 대해 설명합니다. 2. 문제 소개 숫자가 양수인지 음수인지 확인하는 것은 매우 간단한 문제입니다. 그러나 구현을 살펴보기 전에 긍정과 부정의 정의를 이해해 봅시다. 실수 n 이 주어지면 n 이 0보다 크면 양수입니다. 그렇지 않고 n 이 0보다 작으면 음수입니다. 그래서 우리는 여전히 특정한 경우를 가지고 있습니다: 0. 0은 양수도 음수도 아닙니다 . 따라서 다음 세 가지 가능성을 포함 하는 Enum 을 만들 수 있습니다 ..

Spring 2022.12.21

Java에서 Play 프레임워크를 사용하는 REST API

1. 개요 이 사용방법(예제)의 목적은 Play 프레임워크를 탐색하고 Java를 사용하여 REST 서비스를 빌드하는 방법을 배우는 것입니다. REST API를 함께 사용하여 학생 기록을 생성, 검색, 업데이트 및 삭제할 것입니다. 이러한 응용 프로그램에서는 일반적으로 학생 기록을 저장할 데이터베이스가 있습니다. Play 프레임워크에는 Hibernate 및 기타 지속성 프레임워크를 통한 JPA 지원과 함께 H2 데이터베이스가 내장되어 있습니다. 그러나 일을 단순하게 유지하고 가장 중요한 일에 집중하기 위해 간단한 Map를 사용하여 고유한 ID로 학생 개체를 저장합니다. 2. 새 애플리케이션 만들기 Play 프레임워크 소개에 설명된 대로 Play 프레임워크를 설치했으면 애플리케이션을 만들 준비가 된 것입니다..

Spring 2022.12.21

Java의 Play 애플리케이션 라우팅

1. 개요 라우팅은 Spring MVC 를 포함한 대부분의 웹 개발 프레임워크에서 나타나는 일반적인 개념입니다 . 경로는 처리기에 매핑되는 URL 패턴입니다. 핸들러는 웹 애플리케이션의 다운로드 가능한 자산과 같은 실제 파일이거나 MVC 애플리케이션의 컨트롤러와 같이 요청을 처리하는 클래스일 수 있습니다. 이 사용방법(예제)에서는 Play Framework 를 사용하여 웹 애플리케이션을 개발할 때 라우팅 측면을 살펴보겠습니다 . 2. 설정 먼저 Java Play 애플리케이션을 만들어야 합니다. 컴퓨터에서 Play 프레임워크를 설정하는 방법에 대한 자세한 내용은 소개 문서 에서 확인할 수 있습니다 . 설정이 끝나면 브라우저에서 액세스할 수 있는 작동하는 Play 애플리케이션이 있어야 합니다. 3. HTTP..

Spring 2022.12.20

Java에서 재생 소개

1. 개요 이 소개 사용방법(예제)의 목적은 Play 프레임워크를 탐색하고 이를 사용하여 웹 애플리케이션을 만드는 방법을 파악하는 것입니다. Play는 주로 Java 및 Scala와 같은 JVM에서 코드가 컴파일되고 실행되는 프로그래밍 언어를 위한 생산성이 높은 웹 애플리케이션 프레임워크입니다. 최신 웹 애플리케이션 개발에 필요한 구성 요소와 API를 통합합니다. 2. 플레이 프레임워크 설정 Play 프레임워크의 공식 페이지 로 이동 하여 최신 버전의 배포판을 다운로드해 보겠습니다. 이 예제 당시 최신 버전은 2.7입니다. Play Java Hello World 사용방법(예제) zip 폴더를 다운로드하고 편리한 위치에 파일의 압축을 풉니다. 이 폴더의 루트 에서 응용 프로그램을 실행하는 데 사용할 수 있..

Spring 2022.12.20

Play 프레임워크를 사용한 비동기 HTTP 프로그래밍

1. 개요 웹 서비스가 작업을 수행하기 위해 다른 웹 서비스를 사용해야 하는 경우가 종종 있습니다. 낮은 응답 시간을 유지하면서 사용자 요청을 처리하는 것은 어려울 수 있습니다. 느린 외부 서비스는 응답 시간을 늘리고 시스템이 더 많은 리소스를 사용하여 요청을 쌓이게 할 수 있습니다. 비 차단 접근 방식이 매우 도움이 될 수있는 곳입니다. 이 사용방법(예제)에서는 Play Framework 애플리케이션에서 서비스에 대한 여러 비동기 요청을 실행합니다. Java의 비차단 HTTP 기능을 활용하여 자체 기본 논리에 영향을 주지 않고 외부 리소스를 원활하게 쿼리할 수 있습니다. 이 예에서는 Play WebService 라이브러리 를 탐색합니다 . 2. Play WebService(WS) 라이브러리 WS는 Ja..

Spring 2022.12.20

HTTP 호출자를 사용한 Spring Remoting 소개

1. 개요 어떤 경우에는 시스템을 여러 프로세스로 분해해야 하며 각 프로세스는 애플리케이션의 다른 측면을 담당합니다. 이러한 시나리오에서는 프로세스 중 하나가 다른 프로세스에서 동기적으로 데이터를 가져와야 하는 경우가 일반적입니다. Spring Framework는 Spring Remoting 이라는 포괄적인 도구를 제공 하여 원격 서비스를 적어도 어느 정도는 로컬에서 사용할 수 있는 것처럼 호출할 수 있습니다. 이 기사에서는 기본 Java 직렬화 및 HTTP를 활용하여 클라이언트와 서버 애플리케이션 간에 원격 메서드 호출을 제공하는 Spring의 HTTP 호출자 기반 애플리케이션을 설정합니다 . 2. 서비스 정의 사용자가 택시를 예약할 수 있는 시스템을 구현해야 한다고 가정해 보겠습니다. 또한 이 목표를..

Spring 2022.12.20
반응형