본문 바로가기

기술

redisson-spring-boot-starter란 목적: Spring Boot 애플리케이션에서 Redisson을 쉽게 설정하고 사용할 수 있도록 도와주는 스타터 라이브러리입니다.설명:redisson-spring-boot-starter는 Spring Boot와 Redisson의 기본적인 통합을 제공합니다.이 스타터를 사용하면, Spring Boot의 자동 설정 기능을 통해 Redisson 클라이언트가 쉽게 설정됩니다. 즉, RedissonClient를 생성하고 구성하는 작업이 간편해집니다.Spring Data Redis API와의 통합이 아닌, Redisson의 기능(예: 분산 잠금, 분산 객체, 메시지 큐 등)을 Spring Boot에서 바로 사용하고자 할 때 유용합니다.설정 파일에서 간단한 설정을 통해 Redisson 클라이언트를 사용할 수 있습니다... 더보기
redisTemplate이란 RedisTemplate은 Spring Framework에서 제공하는 클래스 중 하나로, Redis 데이터베이스와 상호작용하기 위해 사용됩니다.Redis는 메모리 기반의 고성능 키-값 데이터 저장소로, 캐싱, 세션 관리, 메시지 큐잉 등에 자주 사용됩니다.RedisTemplate은 이러한 Redis 기능들을 자바 코드에서 쉽게 사용할 수 있도록 도와주는 도구입니다.RedisTemplate의 주요 특징 및 기능다양한 데이터 타입 지원:Redis는 문자열, 해시, 리스트, 셋, 정렬된 셋 등 다양한 데이터 타입을 지원합니다.RedisTemplate은 이러한 모든 데이터 타입에 대해 접근할 수 있는 메서드를 제공합니다. 예를 들어, opsForValue()는 문자열 작업을 위한 메서드를, opsForHash(.. 더보기
Spring Boot의 Java 버전 변경하기 (maven, Intellij) Spring Framework 4.5 에서 Spring Boot 2.7로 전환을 했다.그리고 Spring Boot 2.x 호환성을 고려해서 자바 버전도 JDK8에서 JDK11로 변경했다. (고 생각함)  homebrew를 이용해서 자바 11을 설치했고 Intellij도 같이 변경했다. 그리고 시간이 지나서 pom.xml을 봤더니 compiler.source, compiler.target이 1.8로 설정되어 있어 모두 버전을 바꾼게 아니구나 생각이 들었다. 그래서 이번 기회에 수정하면서 다시 정리하려고 한다.   1. Spring Boot의 경우는 properties에 자바 버전을 추가해주면 된다. properties는 Spring Boot 애플리케이션의 설정을 정의하는데 사용한다.그럼 Spring Boo.. 더보기
Maven을 이용한 웹 어플리케이션 생성 및 설정 1. 이클립스를 실행하고, 이클립스의 메뉴 중 File - New - Project를 선택합니다. Maven프로젝트가 기존 워크스페이스 경로에 생성되도록 합니다. Maven에 대해 더 알아보기 위해 웹 어플리케이션 프로젝트를 생성하고, 실행해보도록 하겠습니다. 2. 아키타입(Archetype)을 선택합니다. 아키타입이란 일종의 프로젝트 템플릿(Template)이라고 말할 수 있습니다. 어떤 아키타입을 선택했느냐에 따라서 자동으로, 여러 가지 파일들을 생성하거나 라이브러리를 셋팅해주거나 등의 일을 해줍니다. Maven을 이용하여 웹 어플리케이션을 개발하기 위해서 apache의 maven-archetype-webapp를 선택한 후 Next 버튼을 클릭합니다. 3. package 이름 설정 package이름은.. 더보기
Maven이란? Maven이란? Maven은 지금까지 애플리케이션을 개발하기 위해 반복적으로 진행해왔던 작업들을 지원하기 위하여 등장한 도구입니다. Maven을 사용하면 빌드(Build), 패키징, 문서화, 테스트와 테스트 리포팅, git, 의존성관리, svn등과 같은 형상관리서버와 연동(SCMs), 배포 등의 작업을 손쉽게 할 수 있습니다. Maven을 이해하려면 CoC(Convention over Configuration)라는 단어를 먼저 이해해야 합니다. CoC란 일종의 관습을 말하는데, 예를 들자면 프로그램의 소스파일은 어떤 위치에 있어야 하고, 소스가 컴파일된 파일들은 어떤 위치에 있어야 하고 등을 미리 정해놨다는 것입니다. 이 말은 관습에 이미 익숙한 사용자는 쉽게 Maven을 사용할 수 있는데, 관습에 익숙.. 더보기
RHEL7의 malloc 만약 glibc malloc 메커니즘을 찾다가 오신 분들이라면 아래 링크를 꼭! 보신 후에 이 글을 참고로 봐주시면 좋겠습니다. 모든 내용을 다루기에는 너무 많아져서 어려웠던 부분과 느낀점을 위주로 정리하였습니다. 중간중간 arena와 같은 내용은 아래 링크에서 더 쉽게 확인가능합니다. sploitfun.wordpress.com/2015/02/10/understanding-glibc-malloc/ Understanding glibc malloc I always got fascinated by heap memory. Questions such as How heap memory is obtained from kernel? How efficiently memory is managed? Is it managed.. 더보기
Unicode와 encoding 정의 문자 집합(Character Set)은 정보를 표현하기 위한 글자나 기호들의 집합을 정의한 것입니다. 이런 문자나 기호의 집합을 컴퓨터에서 저장하거나 통신에 사용할 목적으로 부호화 하는 것을 문자 인코딩(부호화)이라 하고 인코딩 된 문자 부호(Character code)를 다시 디코딩(복호화)하여 본래 문자나 기호로 표현할 수 있습니다. Character Set → ( 인코딩 ) → Character Code → ( 디코딩 ) → Character Set 한글 인코딩 한글 표현(또는 작성 형태)에 따라 조합형과 완성형으로 나뉩니다. 조합형: 한글을 초성,중성, 종성으로 나누어 각각 1byte씩 총 3byte로 표현 완성형: 문자표를 토대로 문자를 인식합니다. 만약 문자표에 없으면 표현할 수 없는 단.. 더보기
안전한 패스워드 내 문제 : 비밀번호를 hash처리 후 저장졸업 프로젝트로 스마트 컨트랙트를 다룰 때, 스마트 컨트랙트 사용자 인증을 위해 비밀번호를 저장할 필요가 있었다. 빨리 만들다보니 비밀번호를 단순히 해시 처리해서 저장했었다..  자소서를 쓰면서 다시 확인하다보니 비밀번호에서 부족한 것이 보였다. 그래서, 다른 암호화 방법을 찾다 보니 Naver D2에 좋은 글이 있어 대략적으로 정리했다.        단방향 해시비밀번호를 단순히 해시처리한 것을 단방향 해시라고 한다. 단방향 해시는 역으로 찾는 것은 어렵지만, 정방향으로는 빠른 속도로 계산된다. (+ 해시처리된 값을 다이제트스트라고 한다. )  하지만, 다음과 같은 단점이 있다. 1. 해시처리가 빠르기 때문에, brute force로 매우 빠르게 답을 대조할 수.. 더보기