[IntelliJ] IPv6로 반환되는 값을 IPv4로 반환하는 설정 방법: JVM Options
·
개발 Tip/IntelliJ
해당 글에서는 IntellIJ 내에서 기본적으로 IPv6 형태로 반환되는 IP 값을 IPv4로 반환받는 방법에 대해 알아봅니다. 1) 현상 확인 💡 현상 확인 - Java 내에서 클라이언트 IP 값을 반환 받으려하고 있습니다. 그러나 IPv6 형태로 클라이언트 값이 반환됨을 확인하여 이를 IPv4 형태로 반환받기를 원하여서 이를 적용합니다. 2) IPv4 / IPv6 1. IPv4 💡 IPv4 형태 - Octet의 범위는 점(.)의 구분자를 기준으로 4자리 모두 0 ~ 255자리의 값을 가집니다. - 또한 0 ~ 255 범위 내에서 ‘0xx 형태의 값’을 가지는 경우 해당 경우에 포함되지 않습니다. 2. IPv6 💡 IPv6 - 인터넷 프로토콜 버전 6으로, IPv4의 주소 공간 제한을 해결하기 위해 개..
[Java] MyBatis 이해하기 -2 : 동적 SQL 태그(if, choose, trim, where, set, foreach, bind, sql, include)
·
Java/MyBatis
해당 글에서는 MyBatis에서 사용되는 동적 SQL 태그인 if, choose, trim, where, set, foreach, bind, sql, include에 대해서 알아봅니다. 💡 [참고] 이전에 작성한 MyBatis의 기본 속성에 대해 알고 있으시면 동적 SQL를 이해하는데 도움이 됩니다. [Java] MyBatis 이해하기 -1 : 공통 파라미터 종류, select, insert, update, delete 해당 글에서는 MyBatis에서 공통으로 사용하는 파라미터와 select, insert, update, delete 태그에서 사용되는 속성을 이해하고 예시를 확인해 봅니다. 1) MyBatis 공통 파라미터 종류 1. #{parameter} 💡 #{paramete adjh54.tistor..
[Java/디자인 패턴] 메서드 체이닝(Method Chaining), 플루언트 인터페이스(Fluent Interface), 빌더 패턴(Builder Pattern)
·
Java/아키텍처 & 디자인 패턴
해당 글에서는 메서드 체이닝(Method Chaining), 플루언트 인터페이스(Fluent Interface), 빌더 패턴(Builder Pattern)에 대해서 알아봅니다.1) 메서드 체이닝(Method Chaining)💡 메서드 체이닝(Method Chaining)- 여러 메서드 호출을 연결하여 호출하는 프로그래밍 기술입니다. 이를 이용하면 코드를 간결하게 작성하고 가독성을 높일 수 있습니다.- 이를 통해 객체의 메서드를 연속적으로 호출하여 작업을 수행할 수 있으며, 각 메서드는 호출된 객체를 반환하여 다음 메서드 호출이 가능하게 합니다.- 이러한 메서드 체이닝은 플루언트 인터페이스(Fluent Interface)나 빌더 패턴(Builder Pattern)을 구현하는 데에 자주 사용되며, 간결하고..
[Java] Spring Boot Firebase Cloud Message(FCM) 구축 -2 : 예약 발송 - Spring Boot Quartz 활용
·
Java/Spring Boot
해당 글에서는 Spring Boot 환경에서 FCM 예약 발송 기능을 Spring Boot Quartz(Scheduler)를 이용하여 구성하는 방법에 대해서 알아봅니다. 💡 [참고] FCM 관련해서 구성 내용에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다.분류링크FCM Spirng Boot API 구성 : 단순 전송 기능https://adjh54.tistory.com/432FCM React Native 초기 환경 설정https://adjh54.tistory.com/431FCM React Native Notifee 메시지 수신 구성https://adjh54.tistory.com/4333FCM React Natiive Notifee 메시지 전송 및 예약 발송 구성https://adjh54.tist..
[Java] Spring Boot Quartz 상세 이해하기 -2 : 주요 메서드 및 흐름, 처리과정
·
Java/Spring Boot
해당 글에서는 Spring Boot Quartz에 대해 주요 메서드와 흐름, 처리과정에 대해 알아봅니다. 💡 [참고] Spring Boot Quartz의 이론에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다. [Java] 스케줄링 & Spring Boot Quartz 이해하고 적용하기 -1 : 설정 및 간단예시 해당 글에서는 스케줄링에 대해 이해하고 Spring Boot Starter Quartz를 이용하여 스케줄링을 구성하는 간단한 예시를 구성하는 방법을 위한 목적으로 작성한 글입니다. 💡 스케줄러를 이해하기 이전 adjh54.tistory.com 1) Spring Boot Quartz 💡 Spring Boot Quartz - Java 기반의 오픈 소스 작업 '스케줄링 라이브러리'를 의미합니다..
[Java] Spring Boot Firebase Cloud Message(FCM) 푸시 메시지 API 구축 -1 : firebase-admin
·
Java/Spring Boot
해당 글에서는 Spring Boot API에서 FCM으로 통신하여 FCM Push Message 전송 API 구축을 하는 방법에 대해 알아봅니다.   💡 [참고] FCM 관련해서 구성 내용에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다.분류링크FCM Spirng Boot API 구성 : 단순 전송 기능https://adjh54.tistory.com/432FCM React Native 초기 환경 설정https://adjh54.tistory.com/431FCM React Native Notifee 메시지 수신 구성https://adjh54.tistory.com/433FCM React Natiive Notifee 메시지 전송 및 예약 발송 구성https://adjh54.tistory.com/434F..
[Java] JDBC, DBCP, JNDI 이해하기 : 주요기능, 처리과정
·
Java/이론 및 문법
해당 글에서는 JDBC, JNDI, DBCP에 대해 이해를 돕기 위해 작성한 글입니다. 1) JDBC(Java Database Connectivity)💡 JDBC(Java Database Connectivity) - 자바에서 데이터베이스에 접근할 수 있도록 해주는 API를 의미합니다. 이는 관계형 데이터베이스에서 데이터를 쿼리 하거나 업데이트하는 방법을 제공합니다. - 자바 프로그램에서는 JDBC 드라이버를 통해 데이터베이스에 연결하고 이 드라이버는 데이터베이스에 대한 모든 세부사항을 처리합니다. - 이를 통해 개발자는 데이터베이스의 내부 작동 방식에 대해 신경 쓸 필요 없이 데이터를 쉽게 사용할 수 있습니다. 1. 주요 기능JDBC 기능설명데이터베이스 연결다양한 종류의 데이터베이스에 연결할 수 있습니다..
[Java] MyBatis 연산자 이해하기 : 비교, 사칙, 비트, 시프트 연산자, CDATA
·
Java/MyBatis
해당 글에서는 MyBatis에서 사용되는 비교, 사칙, 비트, 시프트 연산자, CDATA에 대해 알아봅니다. 1) MyBatis 💡 MyBatis - 개발자들이 SQL 쿼리를 쉽게 작성하고 관리할 수 있도록 도와주는 퍼시스턴스 프레임워크입니다. - 이를 사용하여 SQL 쿼리와 프로그래밍 코드를 분리하여 관리할 수 있어서 코드의 가독성과 재사용성을 높이고 유지 보수를 용이하게 합니다. - 또한 JDBC 코드의 복잡성을 추상화하고 SQL 쿼리의 실행 결과와 자바 객체에 매핑하기 위한 강력한 매핑 기능을 제공합니다. [더 알아보기 ] 💡퍼시스턴스 프레임워크 - 데이터의 저장, 복원, 쿼리, 업데이트 등의 작업을 자동화해 주는 소프트웨어 라이브러리입니다. - 이를 사용하면 개발자는 데이터베이스에 대한 복잡한 코..
[Java] Enum(Enumerated type) : 열거형 이해하기 -1 : 정의, 주요특징, 메서드, 활용 예시
·
Java/이론 및 문법
해당 글에서는 Java에서 Enum에 대해 이해하고 이를 활용할 수 있는 방안에 대해서 알아봅니다.1) Enum(Enumerated type) : 열거형💡 Enum(Enumerated type) : 열거형- 특정 값들의 집합을 나타내는 데이터 타입을 의미하며 서로 연관되어 있는 ‘미리 정의된 상수 집합’을 표현하는 데 사용되는 특수 클래스입니다.- 변수가 정해진 명시적인 값을 가질 수 있도록 하며 코드의 가독성을 높이며 안정성을 향상하는데 도움이 됩니다.- Enum의 데이터 구조는 일반적으로 ‘이름’과 ‘값’의 쌍으로 구성되어 있습니다. 각 이름은 고유하고 일반적으로 문자열로 표시되며 값은 숫자입니다. 이러한 이름-값 쌍은 Enum 내에서 중복될 수 없습니다. - 예를 들어 ‘요일’ Enum에서 월요일..
[Java/Short] SecureRandom을 이용한 랜덤 문자열 생성 방법: 숫자, 문자, 특수문자 조합, 임시 비밀번호
·
Java/Short 개발
해당 글에서는 SecureRandom 클래스를 사용하여서 랜덤 문자열을 생성하는 방법에 대해 알아봅니다. 또한 임시 비밀번호로 이용할 수 있는 방법에 대해서도 알아봅니다. 1) SecureRandom을 이용한 랜덤 숫자/문자(난수) 생성방법💡 SecureRandom을 이용한 랜덤 숫자/문자(난수) 생성방법 - 아래의 글을 참고하시면 이전에 작성한 글을 확인하실 수 있습니다.import java.security.SecureRandom; /** * 공통 유틸 * * @author : lee * @fileName : CommonUtils * @since : 1/22/24 */ public class CommonUtils { private CommonUtils() { } /** * 자릿수(digit) 만큼 랜덤..