2023년 회고
·
일상
현재 2023년이 끝났다. 2024년이 되자마자 2023년 회고를 쓰기로 다짐했었는데, 쌓인 피로와 바쁘다는 핑계로 미루고 미루다 며칠이 지난 지금에서야 부랴부랴 작성한다. 새해부터 미루고 시작하다니.. 아주 한 해의 시작이 상쾌하다. 새해 들은 첫 곡 대로 한 해가 흘러간다는 속설이 있다. 그렇게 되길 바라며 재작년에는 HOT의 행복, 작년에는 우주소녀의 이루리라는 노래를 들었다. 올해에는 동생과 같이 뭘 들을까 고민하다가 곡 하나를 선정했다. 처음부터 끝까지 곡이 내레이션으로 좋은 말이 꾹 눌러 담겨 있다. 썸네일만 봐도 재밌어서 한 해를 웃으면서 시작할 수 있던 것도 좋았던 것 같다. 올 한 해에는 더욱더 성공하길 바라며.. 지금의 나 내가 운영하는 서비스는 연간 사업이다 보니 해가 바뀌면 사업이 ..
[Spring] eventListener, transactionalEventListener 예외 및 트랜잭션 전파 총정리
·
Java & Spring
개요 Spring Boot에서 eventListener를 사용하는 경우가 종종 있는데, eventListener와 transactionalEventListener의 차이, transactionalEventListener의 phase 속성에 따라 동작 방식이 다 다르다. 따라서 이번 기회에 eventListener의 동작 방식과 트랜잭션과 엮이면 어떻게 동작하는지에 대해 정리해 보려고 한다. 문제 이번 포스팅에서는 위에서 기술한 각각의 방식에 따라 아래의 문제를 테스트한다. eventListener에서 예외가 발생하면 예외가 service로 전파될까? service의 @Transactional이 eventListener로 전파되고 커밋될까? 기본적으로 알아야 할 내용 아래는 eventListener와 @T..
패스트캠퍼스 일할맛 2기 1:1 멘토링 및 개발세미나 후기
·
Work
개요 개인 공부를 위해 패스트캠퍼스에서 강의를 찾아보던 중, 우연히 '일할맛'이라는 프로젝트의 공지를 발견했다. 확인해 보니 4년 차 이하의 스타트업 소속 백엔드/풀스택 개발자들에게 시니어 개발자 두 분의 1:1 멘토링과 세미나 참여 기회를 제공하는 프로젝트였다. 조건에 모두 부합하는 나로서는 더없이 좋은 기회였기 때문에 고민 없이 지원했고, 대상자에 선정되어 일할맛 프로젝트에 참여한 후기를 남긴다. 세미나는 총 50명을 선발하여 진행되었다. 그중 우선 선발한 1:1 코칭 대상자 4명이 포함되어 있다. 아래는 일할맛 프로젝트 공지글. 현재는 1:1 멘토링에 대한 내용은 사라졌고, 세미나 참여에 대한 공지 내용만 남아있다. https://fastcampus.co.kr/category_online_devta..
패스트캠퍼스 [초격차 패키지 : 한 번에 끝내는 AWS 기반 아키텍처 설계와 DevOps. Online.] 수강 후기
·
Work
개요 예전에 업무 중 우연히 회사에서 "패스트캠퍼스에서 강의 사면 맥북 준대요!"라는 이야기를 들었다. 들어가 보니 강의 3개와 맥북 프로를 묶어서 판매하는 이벤트가 있었다. 당시 맥북이 없던 나로서는 너무 좋은 기회였고, 강의 묶음을 고르던 중 앞으로를 위해 "MSA 기초부터 실무까지 완전정복 MacBook Pro Package"를 선택하여 구매했다. 이 중 지금의 나에게 도움이 많이 되고 있는 [초격차 패키지 : 한 번에 끝내는 AWS 기반 아키텍처 설계와 DevOps. Online.]에 대한 수강 후기를 남긴다. 느낀 점 나는 보통 개발 공부를 할 때 주로 인터넷 강의를 듣는 편이다. 개인적으로 글이나 책을 읽는 건 공부할 때 잘 따라가기 어렵게 느껴지고, 또한 인터넷 강의가 비교적 최신 트렌드에 ..
덴티아이 서식 일괄 다운로드 변천사
·
Work
들어가기 전에 아래는 Spring Boot + Vue.js 환경에서 이루어진 내용입니다. 개요 필자는 2021년부터 덴티아이라는 서비스를 3년간 운영해오고 있다. 덴티아이는 나라에서 지원하는 학생들의 치과주치의 사업을 전산화하는 시스템이다. 사업은 연 단위로 진행되고, 각 기관에서는 작성된 서식들을 특정한 기간(?) 동안 보관해야 한다고 한다. 따라서 덴티아이에는 작성된 서식들을 PDF로 변환한 후 기관별로 연말에 일괄적으로 다운로드할 수 있는 기능이 있다. 이러한 일괄 다운로드 기능의 구현 방식에 대해 변화한 과정을 소개한다. 서식 다운로드 및 인쇄 덴티아이에는 학생의 서식을 실시간으로 다운로드하거나 인쇄할 수 있는 기능이 있다. 이 기능은 작성된 서식을 보는 페이지에서 해당 화면 자체를 프론트에서 직..
[Vue] Chrome에서 파일 다운로드 시 "위험한 파일 차단" 우회하기
·
Javascript
개요 시스템 운영 중 zip 파일을 다운로드하는 기능이 계속 차단된다는 이슈가 보고되었다. 확인해 보니 다운로드를 시도할 때 위험한 파일로 분류되어 다운로드가 차단되었다. 해당 이슈를 비교적 간단하게 우회할 수 있는 방법이 떠올라 해당 방법으로 적용했고, 해당 이슈뿐만 아니라 각종 파일 다운로드 시 공통으로 사용할 수 있는 방식이기도 하여 정리 겸 포스팅하게 되었다. 문제상황 파일을 다운로드하는 경우 보통 해당 파일의 경로를 a 태그의 href에 기입하는 방식으로 다운로드를 구현하곤 하는데, 이때 크롬에서 zip 파일을 다운로드하려고 할 때 아래와 같이 다운로드 파일이 차단되었다. 확인해 보니 크롬 환경에서 zip 파일 등 일부 다운로드를 차단하는 경우가 존재했다. https://support.googl..
Gmail에 도메인 DKIM 설정하기 with AWS Route 53
·
Setting
개요 업무 중에 PM 분의 메일이 계속 스팸 처리되는 문제가 있어 SPF를 적용하면서 추가적인 보안 조치인 DKIM까지 적용한 내용을 기록하게 되었다. SPF 설정에 대한 내용은 아래 포스팅을 참고해 주세요 :) https://hojun-dev.tistory.com/entry/Gmail에-도메인-SPF-설정하기-with-AWS-Route-53 Gmail에 도메인 SPF 설정하기 with AWS Route 53 개요 업무 중에 PM 분의 메일이 계속 스팸으로 처리되고 클라이언트가 수신조차 하지 못하는 경우가 계속 발생했다. 확인해 보니 회사 메일에 SPF가 설정되지 않아서 스팸으로 처리되거나 수신 hojun-dev.tistory.com DKIM이란? DKIM이란 DomainKeys Identified Ma..
Gmail에 도메인 SPF 설정하기 with AWS Route 53
·
Setting
개요 업무 중에 PM 분의 메일이 계속 스팸으로 처리되고 클라이언트가 수신조차 하지 못하는 경우가 계속 발생했다. 확인해 보니 회사 메일에 SPF가 설정되지 않아서 스팸으로 처리되거나 수신 거부되는 것으로 확인하였고, 해당 이슈를 해결한 내용을 기록하게 되었다. SPF란? SPF란 Sender Policy Framework의 약자로 스푸핑으로부터 도메인을 보호하고 발신 메일이 수신 서버에 스팸으로 표시되지 않도록 하는 표준 이메일 인증 방법이다. 이메일 스푸핑이란 공격자가 이메일 주소를 사칭하여 수신자가 신뢰할 수 있는 출처에서 보낸 메시지라고 생각하도록 만드는 기법인데, 수신 메일 서버는 SPF를 사용하여 내 도메인에서 전송된 것처럼 보이는 수신 메일이 내가 승인한 서버에서 전송된 것인지 확인하여 스푸..
hojun-dev
'분류 전체보기' 카테고리의 글 목록 (2 Page)