반응형

두 정수를 나누면 float가 됩니다.

1. 개요 나누기 연산자 (/)를 사용하여 Java에서 왼쪽 값을 오른쪽 값으로 나눌 수 있습니다. 예를 들어 int number = 10 / 5 입니다. 이 빠른 사용방법(예제)에서는 정수 나누기 연산에서 float 결과 를 얻는 방법을 살펴봅니다 . 2. 문제 소개 우선 간단하게 하기 위해 단위 테스트 어설션을 사용하여 이 사용방법(예제)의 계산 결과를 확인합니다. 우리는 a/b 와 같은 두 정수에 나누기 연산자를 적용할 때 a 가 b 로 균등하게 나누어지지 않더라도 항상 정수를 반환 한다는 것을 깨달았 을 것 입니다. 예를 들면 다음과 같습니다. int i = 10 / 4; assertEquals(2, i); 테스트를 실행하면 통과합니다. 따라서 10/4는 2.5 대신 2를 생성 합니다 . 또한 계..

Spring 2023.01.19

Java 애플리케이션 도커화

1. 개요 이 기사에서는 Java 실행 가능 jar 기반 애플리케이션을 Dockerize하는 방법을 보여줍니다 . Docker 사용의 이점에 대해 읽으십시오 . 2. 실행 가능한 Jar 만들기 Maven을 사용하여 실행 가능한 jar를 빌드할 것 입니다. 따라서 우리 애플리케이션에는 기본 메서드 가 있는 간단한 클래스인 HelloWorld.java 가 있습니다 . public class HelloWorld { public static void main(String[] args){ System.out.println("Welcome to our application"); } } 그리고 maven-jar-plugin 을 사용하여 실행 가능한 jar를 생성합니다. org.apache.maven.plugins m..

Spring 2023.01.18

Git "관련 없는 기록 병합 거부"를 수정하는 방법

1. 개요 Git 에는 분기 에 공통 히스토리 기반이 없는 상황이 있습니다 . 따라서 병합하려고 하면 "관련 없는 기록 병합 거부" 오류가 발생합니다. 이 사용방법(예제)에서는 이 오류를 수정하는 방법과 향후 프로젝트에서 이 오류를 방지하는 방법에 대해 설명합니다. 2. 분기가 관련 없는 기록을 가질 수 있는 이유는 무엇입니까? 분기에 관련 없는 기록이 있는 경우의 시나리오를 살펴보겠습니다. 관련되지 않은 기록 기반을 갖는 가장 일반적인 이유는 분기를 서로 독립적으로 시작하기 때문입니다. 예를 들어 로컬 컴퓨터에서 새 Git 프로젝트를 시작한 다음 원격 GitHub 브랜치에 연결하면 이러한 브랜치의 기록 기반이 달라집니다. 유일한 예외는 분기 중 하나에 커밋이 없는 경우입니다. 이 경우 문제 없이 병합되..

Spring 2023.01.18

SimpleDateFormat 사용방법(예제)

1. 소개 이 사용방법(예제)에서는 SimpleDateFormat 클래스 에 대해 자세히 살펴 보겠습니다 . 로케일 및 시간대를 처리 하기 위해 클래스가 노출하는 유용한 메서드뿐만 아니라 간단한 인스턴스화 및 형식 지정 스타일 을 살펴보겠습니다 . 2. 간단한 인스턴스화 먼저 새 SimpleDateFormat 개체 를 인스턴스화하는 방법을 살펴보겠습니다 . 4개의 가능한 생성자 가 있지만 이름에 따라 간단하게 유지하겠습니다. 시작하는 데 필요한 것은 원하는 날짜 패턴 의 문자열 표현입니다 . 다음과 같이 대시로 구분된 날짜 패턴부터 시작하겠습니다. "dd-MM-yyyy" 이렇게 하면 해당 월의 현재 날짜, 해당 연도의 현재 월, 마지막으로 현재 연도로 시작하는 날짜 형식이 올바르게 지정됩니다. 간단한 단..

Spring 2023.01.18

Spring Boot에서 Apache Camel 경로 테스트

1. 개요 Apache Camel 은 여러 알려진 엔터프라이즈 통합 패턴 을 구현하는 강력한 오픈 소스 통합 프레임워크 입니다. 이 예제에서는 Camel 경로에 대한 신뢰할 수 있고 독립적인 단위 테스트를 작성하는 방법을 배웁니다 . 먼저 Spring Boot 를 사용하여 기본 Camel 애플리케이션을 생성하는 것으로 시작하겠습니다 . 그런 다음 Camel의 Spring 테스트 지원 API를 JUnit 5 와 함께 사용하여 애플리케이션을 테스트 하는 방법을 살펴보겠습니다 . 2. 의존성 프로젝트 설정 이 있고 Spring Boot 및 Camel과 함께 작동하도록 구성되어 있다고 가정 합니다. 그런 다음 pom.xml 에 camel-test-spring-junit5 의존성을 추가해야 합니다 . org.ap..

Spring 2023.01.17

Flux.create와 Flux.generate의 차이점

1. 소개 Project Reactor는 JVM을 위한 완전한 비차단 프로그래밍 기반을 제공합니다. Reactive Streams 사양 구현을 제공하고 Flux와 같은 구성 가능한 비동기 API를 제공합니다. Flux는 여러 반응 연산자가 있는 반응 스트림 게시자입니다. 0에서 N까지의 요소를 내보낸 다음 성공적으로 또는 오류와 함께 완료됩니다. 필요에 따라 여러 가지 방법으로 만들 수 있습니다 . 2. 플럭스의 이해 Flux는 0에서 N개의 요소를 내보낼 수 있는 Reactive Stream 게시자입니다 . Flux 시퀀스를 생성, 오케스트레이션 및 변환하는 데 사용되는 여러 연산자가 있습니다. Flux는 성공적으로 완료되거나 오류와 함께 완료될 수 있습니다. Flux API는 소스를 만들거나 여러 콜..

Spring 2023.01.17

액세스 제어 모델

1. 소개 이 기사에서는 다양한 액세스 제어 모델을 실제로 구현하는 방법을 살펴봅니다. 2. 액세스 제어 모델이란 무엇입니까? 애플리케이션, 특히 웹 기반 애플리케이션에 대한 일반적인 요구 사항은 정책 이라고도 하는 주어진 조건 집합이 충족되는 경우에만 일부 작업을 수행할 수 있다는 것 입니다 . 자, 이것은 매우 일반적인 요구 사항이므로 몇 가지 예를 제시해 보겠습니다. 인터넷 포럼: 회원만 새 메시지를 게시하거나 기존 메시지에 회신할 수 있습니다. 전자 상거래 사이트: 일반 사용자는 자신의 주문만 볼 수 있습니다. 은행 백오피스: 계정 관리자는 자신의 고객 포트폴리오를 관리할 수 있습니다. 이러한 포트폴리오 외에도 일시적으로 사용할 수 없는 경우(예: 휴가) 다른 계정 관리자의 클라이언트 포트폴리오를..

Spring 2023.01.17

Java에서 Kubernetes 허용 컨트롤러 만들기

1. 소개 쿠버네티스로 한동안 작업한 후에는 많은 상용구 코드가 관련되어 있음을 곧 알게 될 것입니다. 간단한 서비스의 경우에도 일반적으로 매우 장황한 YAML 문서의 형식을 취하여 필요한 모든 세부 정보를 제공해야 합니다. 또한 주어진 환경에 배포된 여러 서비스를 처리할 때 해당 YAML 문서에는 반복되는 요소가 많이 포함되는 경향이 있습니다. 예를 들어 지정된 ConfigMap 또는 일부 사이드카 컨테이너를 모든 배포에 추가할 수 있습니다. 이 기사에서는 DRY 원칙을 고수하고 Kubernetes 승인 컨트롤러를 사용하여 이 모든 반복 코드를 피할 수 있는 방법을 살펴보겠습니다. 2. 입학 사정관이란? 승인 컨트롤러는 API 요청이 인증된 후 실행되기 전에 사전 처리하기 위해 Kubernetes에서 ..

Spring 2023.01.17

Kubernetes Java API에서 네임스페이스 및 선택기 사용

1. 소개 이 사용방법(예제)에서는 Kubernetes Java API를 사용하여 리소스를 필터링하는 다양한 방법을 살펴봅니다. Kubernetes Java API를 다루는 이전 기사에서는 클러스터 리소스를 쿼리, 조작 및 모니터링하는 데 사용할 수 있는 방법에 중점을 두었습니다. 이러한 예에서는 특정 종류의 리소스를 찾거나 단일 리소스를 대상으로 한다고 가정했습니다. 그러나 실제로 대부분의 응용 프로그램에는 몇 가지 기준에 따라 리소스를 찾는 방법이 필요합니다. Kubernetes의 API는 이러한 검색 범위를 제한하는 세 가지 방법을 지원합니다. 네임스페이스: 지정된 Kubernetes 네임스페이스 로 제한된 범위 필드 선택기: 필드 값이 일치하는 리소스로 범위가 제한됨 라벨 선택기: 일치하는 라벨이..

Spring 2023.01.17

Java Kubernetes API로 리소스 생성, 업데이트 및 삭제

1. 소개 이 사용방법(예제)에서는 공식 Java API를 사용하여 Kubernetes 리소스에 대한 CRUD 작업을 다룹니다. 기본 프로젝트 설정 및 실행 중인 클러스터에 대한 정보를 얻기 위해 이를 사용할 수 있는 다양한 방법 을 포함하여 이전 기사에서 이 API 사용의 기본 사항을 이미 다뤘습니다 . 일반적으로 Kubernetes 배포는 대부분 정적입니다. 만들고자 하는 것을 설명하는 일부 아티팩트(예: YAML 파일)를 만들고 DevOps 파이프라인에 제출합니다. 그런 다음 시스템의 일부는 새 구성 요소를 추가하거나 기존 구성 요소를 업그레이드할 때까지 동일하게 유지됩니다. 그러나 즉시 리소스를 추가해야 하는 경우가 있습니다. 일반적인 것은 사용자가 시작한 요청에 대한 응답으로 작업 을 실행하는 ..

Spring 2023.01.17
반응형