본문 바로가기

Programming50

Cron을 이용한 Scheduling 방법 Spring Framework 에서 일정한 시간 간격으로 작업을 수행하기 위해 스케쥴링 기능을 사용할 수 있다.그 중에서도 Cron 표현식을 이용한 스케쥴링은 작업시간을 유연하게 지정할 수 있어서 많이 활용된다.1. Spring 에서 스케줄링 활성화Spring 에서 스케줄링 기능을 사용하려면 먼저 @EnableScheduling 어노테이션을 통해 스케쥴링 기능을 활성화 해야 한다. 이 어노테이션은 보통 @Configuration 클래스에 추가 된다.import org.springframework.context.annotation.Configuration;import org.springframework.scheduling.annotation.EnableScheduling;@Configuration@Enab.. 2024. 8. 19.
Velocity 를 이용한 템플릿 작성 사내 이메일이라던지 Noti 메일에 대한 템플릿을 작성하여그 요소값만 넣어주고 메일을 발송하는 시스템을 많이 개발해왔었다.개발을 하면서 그냥 DB에 템플릿을 넣어주는구나만 알고 있었는데이걸 Velocity code 라고 부르는걸 이제서야 깨닫고 좀 더 알아보려 한다. 1.Velocity 란?Apache Velocity 는 텍스트 기반의 템플릿 엔진으로, 웹 페이지 템플릿, 이메일 템플릿, 코드 생성 등 다양한 용도로 활용할 수 있다. Velocity는 주로 Java 애플리케이션과 통합되어 동적인 콘텐츠를 쉽게 생성할 수 있다. Velocity의 특징간결한 문법 : '$', '#' 기호를 사용하여 변수를 참조하고, 조건문, 반복문 등의 구조를 표현할 수 있다.Java와의 통합용이성 : Java 객체의 속성.. 2024. 8. 19.
JAVA 비동기처리 CompletableFuture 많은 사람들이 비동기라고 하면 AJAX를 떠올린다. Java 에서도 비동기로 처리해주는 명령어가 있다.CompletableFuture라는 명령어 인데 이는 비동기 프로그래밍으로 서버의 응답시간을 줄이고, 더 나은 사용자 경험을 제공해준다. Java 8 버전에 도입된 처리 도구로 비동기 작업을 처리하고, 콜백을 사용하여 작업 완료 후의 동작을 정의할 수 있다. 1.CompletableFuture 생성 CompletableFuture.runAsync(Runnable) : 반환값이 없는 비동기 작업을 실행.CompletableFuture.supplyAsync(Supplier) : 반환값이 있는 비동기 작업을 실행. import java.util.concurrent.CompletableFuture;public .. 2024. 8. 5.
원시 타입(Primitive type)과 래퍼 클래스(Wrapper class) Java에서는 데이터 타입을 두 가지로 분류한다원시 타입(primitive type)과 래퍼 클래스(wrapper class).원시 타입과 래퍼 클래스의 종류와 차이점에 대해 알아보자.원시 타입 (Primitive Types):메모리 효율이 높고, 기본적으로 0, 0.0, false 등의 값을 가집니다.메서드를 지원하지 않습니다.byte: 8비트 정수 타입. (-128 ~ 127)short: 16비트 정수 타입. (-32,768 ~ 32,767)int: 32비트 정수 타입. (-2^31 ~ 2^31-1)long: 64비트 정수 타입. (-2^63 ~ 2^63-1)float: 32비트 부동 소수점 타입.double: 64비트 부동 소수점 타입.char: 16비트 유니코드 문자 타입. ('\u0000' ~ .. 2024. 7. 31.
TCP 소켓 통신 TCP 소켓 통신은 네트워크 프로그래밍에서 가장 기본적인 방법이다.TCT)(Transmission Control Protocol) 는 신뢰성 있는 데이터 전송을 보장하는 전송 계층 프로토콜이다.Socket은 네트워크 양쪽 간 통신을 담당하는 엔드포인트이다. 1. TCP 소켓 통신의 개념두 개의 엔드포인트 간에 연결을 설정하여 데이터를 주고 받는다. 연결 지향적: 통신을 시작하기 전에 연결을 설정해야 합니다.신뢰성 보장: 데이터의 순서 보장, 손실 시 재전송 등 신뢰성 있는 통신을 제공합니다.양방향 통신: 데이터 송수신이 동시에 가능합니다. 2.TCP 소켓 통신의 동작방식 소켓 생성: 서버와 클라이언트 모두 소켓을 생성합니다.서버 바인딩 및 리스닝: 서버는 특정 IP 주소와 포트 번호에 소켓을 바인딩한 후.. 2024. 7. 30.
자주쓰는 JavaScript 형변환 함수들 JavaScript 에서 자주쓰는 형변환 함수들을 정리해보자1. String()String(123); // "123"String(true); // "true"String(null); // "null"String([1, 2, 3]); // "1,2,3" 2.toString()(123).toString(); // "123"true.toString(); // "true"[1, 2, 3].toString(); // "1,2,3"(255).toString(16); // "ff" (16진수 문자열)let num = 255;num.toString(2); // "11111111" (2진수)num.toString(8); // "377" (8진수)num.toString(16); // "ff" (1.. 2024. 7. 29.
728x90
반응형
LIST