분류 전체보기
-
React 기본 - useRef카테고리 없음 2025. 12. 1. 01:18
useRef - 정보 저장소useRef란, 렌더링에 필요하지 않는 값을 참조할 수 있는 훅입니다.쉽게말해서 "렌더링과 상관 없는 값이 유지되는 장소"입니다. 일반 변수의 경우 렌더링이 되면 값이 초기화되어버립니다. 하지만 useRef를 쓰면 렌더링이되어도 값을 유지시킬 수 있습니다. 이와 비슷한 것으로 useState또한 렌더링이 되어도 값이 유지가됩니다.useSatate와 관련된 내용은 다른 포스팅을 참고해주세요.https://shinebyul.tistory.com/134 React Hook 기본 - useState, useEffectuseState버튼을 누르면 값을 한개씩 증가하는 컴포넌트를 만들어보겠습니다.아주 간단한 클릭버튼과 , 버튼 아래에 count를 표시하도록 만들고, 버튼을 클릭(onCli..
-
React Hook 기본 - useState, useEffectFrontEnd 2025. 11. 14. 21:37
useState버튼을 누르면 값을 한개씩 증가하는 컴포넌트를 만들어보겠습니다.아주 간단한 클릭버튼과 , 버튼 아래에 count를 표시하도록 만들고, 버튼을 클릭(onClick)하면 addCount() 함수가 실행되어 count변수가 +1씩 증가하도록 했습니다.const Component = ()=>{ let count = 0; const addCount =()=>{ count++; console.log("count:", count); } return( addCount()}>click count : {count} );}export default Component; 그럼 이제 개발자도구를 ..
-
vectorDB와 GraphDBCS/DataBase 2025. 9. 16. 14:57
자동목차 데이터베이스에는 다양한 종류가 있습니다.흔히 아는 데이터베이스 종류로는 RDBMS가 있습니다.RDBMS는 오랫동안 사용되어왔지만 최근 데이터 양, 데이터 형식, 데이터 관계가 많아지고 ai가 등장하면서 데이터 관리에 대해 더 많은 요구사항이 생겼습니다. 그래서 등장한 데이터베이스가 vectorDB와 graphDB입니다 Vector Database벡터 데이터베이스는 텍스트, 이미지, 오디오 등 비정형 데이터를 수치적인 '벡터' 형태로 저장하고 검색하는 데 특화된 데이터베이스입니다.기존 관계형 데이터베이스가 정확히 일치하는 데이터를 검색하는 것과 달리, 벡터 데이터베이스는 '벡터 임베딩'을 활용해 데이터 간의 의미적 유사성을 측정하여 가장 유사한 항목을 찾아내는 '유사성 검색'을 수행합니다. 예..
-
Spring Security Session 인증 흐름카테고리 없음 2025. 6. 12. 10:23
주요 Filter의 역할SecurityContextHolderFilter필터체인 진입시 세션을 만들고, Context를 생성하는 필터이다.UsernamePasswordAuthentcationFilter/login(또는 설정한 url)으로 요청시 요청을 가로채 사용자 인증(Authentication)을 처리하는 필터이다.기본적으로 username과 password를 통해 인증을하며, 인증 성공시 Context의 authentication에 사용자 정보를 저장한다.ExceptionTranlationFilter예외를 감지하고, 예외 종류에 따라 응다답을 처리한다.만약 인가예외(AccessException)라면 커스텀한 로그인창 또는 403에러를,인증예외(AuthenticationException)이라면 설정한..
-
GitLab에 SSH Key 등록하기, SSH Clone 원리카테고리 없음 2025. 4. 22. 08:59
1 . 키 생성하기ssh-keygen -t rsa -b 4096 -C "gitlab-server_10.10.10.135”# -C 옵션은 그냥 주석같은거! 무슨 키인지 잘 알 수 있게 메모하면 됨. 2 . 생성된 키 확인하기ls ~/.ssh# id_rsa : 개인키# id_rsa.pub : 공개키 3 . 키 복사하기생성한 공개키를 복사한다.pbcopy 4 . GitLab에 복사한 공개키 등록하기프로필 클릭 > Preferences > 위에 SSH key > Add new key 에서 복사한 키 붙여넣기 5 . GitLab 연결 확인하기ssh -T git@10.10.10.135 #깃랩 주소# Welcome to GitLab, @root! SSH 방식 원리GitLab에서 SSH clone 방식은 기본적으로 ..
-
GitLab CICD카테고리 없음 2025. 4. 6. 23:55
GitLap RunnerGitLab Runner는 GitLab CI/CD 파이프라인에서 Job을 실행하는 애플리케이션GitLab에 푸시한 코드를 자동으로 테스트, 빌드, 배포 등을 실행하는 작업을 실제로 수행하는 역할이 GitLab RunnerSelf-managed Runner직접 설치하고 관리하는 Runner를 의미GitLab에서 기본 제공하는 “GitLab-hosted Runner”도 있지만, 이건 GitLab이 관리Self-managed Runner는 사용자가 자신의 서버, 클라우드, 또는 로컬 머신에 설치해서 쓰는 방식GRIT (GitLab Runner Infrastructure Toolkit)GRIT은 Terraform 모듈들의 라이브러리입니다.여러 개의 Runner를 클라우드 환경에서 쉽게 만..
-
Java Template EngineCS/JAVA 2025. 3. 31. 08:14
자바 템플릿 엔진이란 서버 사이드에서 HTML 등의 문서(뷰)를 생성할 때, 자바 코드와 데이터를 HTML에 삽입할 수 있도록 도와주는 도구입니다. 쉽게 말하면, 백엔드에서 동적으로 웹 페이지를 만들어 클라이언트에 전달할 때 사용하는 기술입니다.대표적인 자바 템플릿 엔진에는 타임리프(Thymeleaf), 프리마커(FreeMarker), JSP 등이 있습니다. ⸻1. 타임리프 (Thymeleaf)HTML 원본을 그대로 브라우저에서 볼 수 있음 (natural templating)HTML을 그대로 열어도 깨지지 않아 디자이너와 협업하기 좋음.표현식 문법: ${변수}, th:text, th:if, th:each 등Spring Boot와 잘 통합됨 (자동 설정 지원)HTML5를 기반으로 동작비교적 배우기 쉬운 ..
-
Maven 빌드 과정CS/Spring 2025. 3. 31. 08:13
1. Maven의 기본 생명 주기Maven에는 세 가지 기본 생명 주기(Build Lifecycle)가 있습니다.① Clean Lifecycle기존 빌드 결과물을 정리하는 과정주요 단계:pre-clean: 정리 전에 실행clean: 빌드 결과물 삭제post-clean: 정리 후 실행② Default (Build) Lifecycle가장 중요한 생명 주기로, 프로젝트의 빌드 과정이 포함됨주요 단계:validate: 프로젝트가 정상적인지 검증 (pom.xml 파일 존재 여부, 필수 정보 확인)compile: 소스 코드 컴파일test: 단위 테스트 실행 (src/test/java의 테스트 코드 실행)package: 실행 가능한 형태로 패키징 (.jar 또는 .war 생성)verify: 패키징된 결과물이 정상적인..