본문 바로가기

전체 글

(78)
[Spring] Optional 객체 여부에 따른 map 사용법 1)객체가 Optional 객체인 경우 - JPA를 활용하면 단일 객체 리턴에 대해서는 모두 Optional 객체로 반환한다. ( ※ 참고로 JPA 에서 List 로 리턴할 때는, List 가 비어있으면 Optional 객체가 아닌 Null로 리턴한다.) - 따라서 아래 mailRepository.findById 는 Optional 객체를 리턴하며 따로 Optional.of 나 Optional.ofNullable 를 활용할 필요는 없다. Mail mail = this.mailRepository.findById(mailRequestDTO.getId().longValue()) .map(m -> { Mail newMail; newMail = m; // ... Setting ... // return newMai..
[Spring] Get 호출시 response 에 한글 깨짐 현상 Spring boot GET 으로 호출시 response 값에 들어있는 한글이 깨지는 현상이 발생했었다. 아래와 같이 response 로 받은 값을 UTF-8로 인코딩을 해서 사용하니 문제가 해결되었다. 참고) httpGetConnection 은 내가 만든 메소드 이름이다. HttpResponse response = httpGetConnection("http://{URL}"); HttpEntity entity= response.getEntity(); String result = EntityUtils.toString(entity, "UTF-8");
[Spring] LZ4 압축 및 압축 해제 (FILE) LZ4 압축 및 압축해제 in JAVA import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import org.apache.commons.codec.binary.Base64; import net.jpountz.lz4.LZ4FrameInputStream; import net.jpountz.lz4.LZ4FrameOutputStream; public class Lz4Compress { public static final int DEFAULT_BUFFER_SIZE = 8192; public static final int EOF = ..
[Encoding] Base64 정리 회사 DB 에서 데이터를 받아올 일이 있었는데, 그게 Base64로 Encoding 되어 있었습니다. Base64 encoding 은 사실 알게 모르게 자주 사용하고 있었는데, 제대로 정리해 본적이 없어서 이번 기회에 정리하기로 마음 먹었습니다. ● Base64? [참고: https://blue-boy.tistory.com/227 ] > Base64를 사용하는 가장 큰 이유는 "binary data를 인코딩해서 Text 기반 데이터로 다룰 수 있다" 라는 점 때문입니다. binary data 중 ASCII 코드에 포함되지 않는 Data가 있어 ASCII 로 Data를 전달하면 Data 손실이 발생할 수 있습니다. 아스키는 7bit Data 이고, binary data는 8비트를 모두 사용하기 때문이죠. ..
[자격증] CKA (Certified Kubernetes Administrator) 자격증 취득 후기 안녕하세요. 최근 회사생활을 하면서 취득한 CKA 자격증에 대해서 정보 공유를 하려고 합니다. CKA 란?? Full Name 은 Certified Kubernetes Administrator 이고 Clound Native Computing Foundation(CNCF) 와 The Linux Foundation 에서 발행하는 Kubernetes 자격증입니다. 응시는 300달러로 할 수 있고 총 2번의 시험 기회를 줍니다. 300달러긴 하지만 할인 코드를 찾아보면 10~15%정도 할인해서 응시할 수 있습니다. 회사에서 여러 사람들이 취득했고, 선배님들께서 동기부여를 해줘서 시작하게 된 자격증입니다. 준비방법 Udemy Business CKA강의를 기본으로 준비했습니다. 개인적으로 굉장히 애를 먹었던 부분은..
[Python] Flask를 활용한 Shortener URL 웹 서비스 만들기- 1 프로젝트를 시작하기 전에 알아야할 내용들을 먼저 알아봅시다. 간단하게 설명하겠습니다. 1. 웹 페이지 동작 원리 ※ 웹 프로그램 : 웹 브라우저로 접속해 사용하거나 HTTP 메시지를 보내 원격에서 사용하는 프로그램 Ex) 게시판, 쇼핑몰, 블로그 등 사용자가 웹 프로그램이 가지고 있는 자원을 웹 브라우저로 요청하면, 웹 프로그램은 결과를 생성해서 브라우저로 반환합니다. 만약, 요청한 자원이 정적 파일(HTML, .jpg 등)이라면 웹 서버가 자원의 위치를 파악해 전달하면 됩니다. 즉, 아래와 같은 그림의 요청과 응답이 이루어지게 됩니다.아래 그림은 웹 프로그램이 없을 때, 웹 브라우저와 웹 서버의 통신입니다. 그런데 복잡한 기능(동적 데이터 처리)을 가진 웹 프로그램이 포함되면 클라이언트의 요청을 응답하..
[Python] Flask를 활용한 Shortener URL 웹 서비스 만들기- Intro 대학교 때 Python 이란 언어는 ML과 Data Science 에 활용되는 언어라는 단순한 생각만 가지고 있었습니다. 그러던 제가 설마 설마 Python을 만지게 될 줄은 몰랐습니다. 특히 Python으로 웹을 하게 될 줄은 정말 몰랐죠... 인생이 내 맘대로 되는건 정말 아닌거 같습니다. 그래도 이왕 한 김에 블로그에 어떻게 만들었는지 글로 남겨보려고 합니다. Flask에 대한 참고자료가 많이 없기도 하고, 시작하시는 분들의 Toy project로도 좋은거 같은 생각이 들었습니다. 튜토리얼 같이 참고만 하셨으면 좋겠어요 ㅋㅋ 저도 이번에 처음 공부해봐서 양질의 코드가 나오진 않을 수도 있습니다... 1. Project introduction 제목과 같이 Shortener URL 서비스를 Flask를..
[취업] 취업 시즌! 멘탈 관리하는 법! 안녕하세요. 요즘 코로나 때문에 공채도 미뤄지고, 여러모로 스트레스 받으실 취준생분들에게 제가 생각하는 '멘탈 관리법'을 이 글에서 공유하고자 합니다. 바로 시작할게요! 1. 하루만 좌절하자! 합격자 발표날에 불합격 통지를 받았을 때... 그 허탈함은 경험해보지 않은 사람들은 알 수 없을 거에요ㅠㅠ 맘이 뒤숭숭해지고 "그렇게 열심히 했는데, 역시 난 안되는건가..."라는 부정적인 생각이 머리 속을 지배합니다. 이런 상태에서 앞으로 남은 취준을 준비하기가 쉽지 않을거에요. 그런 날은 하던 공부를 잠시 멈춰두고 하루만 좌절해보는 것도 방법일 수 있어요. 온갖 감정을 억누르고 공부하는 것보다는 그 감정을 온전히 받아드리고 하루만 좌절합시다 ㅠㅠ 저 같은 경우는 높은 곳에 올라가서 밤하늘을 보면서 혼자 신세 한..