Comdolidol-i

페이지에서 데이터를 조회할때 날짜 형식에 맞지 않는 데이터로 인해서 페이지 에러가 발생할 때가 종종 존재합니다. 그럴 때마다 일일히 찾을 수 없기 때문에, 함수를 만들어서 편하게 사용하는 편입니다. 이번 포스팅에서는 보편적으로 사용할 수 있는 날짜 형식 검증 함수를 기록하려고 합니다. 입력받은 문자열 값이 null인 경우 false를 반환시킵니다. 그리고 입력받은 문자열을 date 형식으로 정상적으로 처리되면 true가 발생하게 되고, 만약 예외처리가 발생할 경우 false를 반환하게 될 것입니다. CREATE FUNCTION validation_check_date(str CHARACTER VARYING) RETURNS BOOLEAN AS $$ BEGIN IF str is NULL THEN RETURN ..
자바에서 스태틱 객체는 전역으로 사용할 수 있고, 코드 내에서 어디서든 참조할 수 있습니다. 그리고 스태틱에 대해서 정리하면서 스태틱은 GC의 대상이 아니기 때문에(스태틱은 객체 생성이 아니기 때문에), 무분별한 사용을 하면 안 된다고 알고 있었습니다. 하지만 이 내용은 java 8 버전 이전의 내용이었고, 자바 8부터는 스태틱 객체도 GC의 대상이 되었고, GC에 대한 간단한 설명과 스태틱 객체가 왜 GC의 대상이 되었는지 기록하려고 합니다. 참고로 java 8은 2014년 3월에 출시되었습니다. 🤒 메모리에 객체를 생성하면 Eden에 저장이 됩니다. 그리고 Eden 영역이 가득 차면, S1 또는 S2로 이동되고, 둘 중에 하나가 가득 차면 비어있는 곳으로 이동하게 됩니다. 그렇기 때문에 S1 또는 S..
Elasticsearch에 대해 정리할 때, 우연히 PostgreSQL에 대한 Full Text Search에 대한 포스팅한 글을 보게 되었습니다. 놀랍게도 PostgreSQL에서도 Full Text Search를 지원하고, 놀랍게도 제가 관리하는 페이지에서 데이터를 검색할 때 해당 함수를 이용해서 데이터를 조회를 하였습니다. 저의 무지함에 놀라며, 이번 포스팅에 해당 검색에 대해 조금 알아보려고 합니다. RDBMS에서 특정 단어에 대한 패턴 검색을 할 경우 LIKE와 와일드카드 '%'을 대게 사용합니다. SELECT * FROM products WHERE product_name LIKE '%app%'; LIKE 연산자와 '%' 와일드카드는 부분 문자열 일치를 수행합니다. 예를 들면, 'app'이 포함된..
이번 글에서는 엘라스틱서치(Elasticsearch)에서 데이터를 어떤 방식으로 저장하는지 알아보겠습니다. 오늘 글의 주제는 역인덱스(inverted index) 구조에 대해서 알아보겠습니다. 일반적인 RDBMS에서 텍스트 형식으로 이루어진 컬럼에서, 특정 단어가 포함되어 있는지 확인하기 위해서는 다음과 같이 패턴을 검색할 수 있습니다. SELECT * FROM test_table WHERE test_columns LIKE '%quokka%' 보통 와일드카드 '%'를 이용하여 특정 단어로 시작한, 끝 맺히는, 포함되어 있는 데이터를 조회할 때, LIKE 연산과 '%'을 사용하여 패턴 검색을 할 것입니다. 1. the cute white quokka 2. the cute brown quokka 3. the..
이번에 회사에서 엘라스틱 서치에 대해서 도입을 한다. 하지만 해당 기술에 대해 무지하기 때문에 오늘부터 차근차근 공부할려고 한다. 오늘의 주제는 엘라스틱 스택에 대해 가볍게 내용 정리를 할려고 한다. 엘라스틱 스택(Elastic Stack) 엘라스틱 스택은 일반적인 빅데이터 파이프라인을 구성하기 위한 데이터 수집, 가공, 저장, 분석, 시각화에 필요한 모든 소프트웨어를 갖추고 있다. 비츠와 로그스태시는 데이터를 수집하고 가공하는 역할을 하며, 엘라스틱 서치는 저장하고 분석하는 역할을 담당한다. 마지막으로 키바나는 엘라스틱 서치에 저장된 데이터를 시각화하고 모니터링하는 역할을 수행한다. 엘라스틱 서치(Elastic Search) 엘라스틱 서치는 검색 엔진이지만, 다른 포털 사이트와 다르게 검색 엔진이 내부..
@RequestMapping @RequestMapping은 Spring Framework에서 컨트롤러 메서드에 대한 매핑을 지정하는 데 사용되는 어노테이션입니다. 이 어노테이션은 클래스 수준 또는 메서드 수준에서 사용될 수 있습니다. 클래스 수준에서 사용할 경우, 해당 클래스의 모든 메서드에 적용됩니다. @Controller @RequestMapping("/example") public class ExampleController { @RequestMapping("/hello") public String hello() { return "helloPage"; } } // 위에 코드에서 클라이언트에서 "/example/hello" 경로에 요청을 보내면 // 서버에서는 hello 메서드가 실행되면서 클라이언트한..
@SpringBootApplication @SpringBootApplication은 Spring Boot FrameWork에서 주요한 어노테이션 중 하나로, Spring Boot Application을 개발하는 데 사용 됩니다. 해당 어노테이션을 사용하면 Spring Boot는 Application 설정을 자동으로 구성하고, 필요한 Spring Bean 들을 자동으로 검색하여, classpath에 있는 라이브러리들을 기반으로 자동 구성을 활성화합니다. @SpringBootApplication에서는 내부적으로 다음과 같은 일을 수행합니다 @SpringBootConfiguration Spring Boot에서 사용되는 특수한 유형의 @Configuration으로, 설정 클래스를 지정할 수 있습니다. 클래스 내..
TCP/ IP (Transmission Control Protocol/ Internet Protocol) 현재의 인터넷에서 사용하는 프로토콜 그룹이며, 상호작용하는 모듈로 이루어진 계층적 프로토콜이다. 각 모듈을 특정한 기능을 제공하며 원래의 TCP/IP 프로토콜은 하드웨어에 설치된 4가지 소프트웨어 계층으로 정의되지만 현재는 5 계층으로 간주한다. 응용 계층(Application Layer) - 프로토콜 : HTTP, SMTP, FTP - PDU : Message OSI 모델의 최상위 계층으로 다양하게 존재하는 응용 환경에서 공통적으로 필요한 기능을 다룬다. 시스템 간의 응용 처리는 상호 간에 통신하면서 일련의 업무를 처리할 수 있도록 필요한 서비스 기능을 제공한다. 이메일, 파일 전송, 웹사이트 조회..
행복한쿼콰
'분류 전체보기' 카테고리의 글 목록 (4 Page)