전체 글 282

Mybatis Long 타입 매핑 오류

SpringBoot + Mybatis 환경에서 Object 방식으로 데이터를 받을때, Example.java @Data @AllArgsConstructor @NoArgsConstructor public class Example{ private String a; private long b;//bigint를 받기 위해 long으로 선언 } ExampleMapper.xml ... SELECT A, B FROM EXAMPLE ... 다음과 같은 상황에서 변수 b의 값을 할당하지 못하는 테스트 결과가 나왔다. b=0 으로 떠서 문제가 발생하였는데, @NoArgsConstructor를 지워줌으로서 해결되었다. vo를 매핑하는 과정에서 변수가 없는 생성자를 먼저 만들면서 매핑하지 못하는 오류가 발생한 것으로 보인다.

Oracle vs PostgreSQL 문법, 차이점

Oracle, PostgreSQL 차이점 Oracle 에서 '' 은 null 이지만, PostgreSQL 에서는 '' 는 '' 이고, null 은 null이다. Oracle 은 VARCHAR2 인데 반해, PostgreSQL 은 Varchar 이다. PostgreSQL 은 Schema 를 지원하고, Oracle 은 User 가 Schema 를 포함하는 개념이다. 첫 번째 파라미터 값이 null 인 경우, 두 번째 파라미터 값을 return 하고, 그렇지 않은 경우 첫 번째 파라미터 값을 return 한다. ※ PostgreSQL 에서 '' 은 null 이 아니라는 것에 주의해야 한다. PostgreSQL 에서 nvl 과 완벽하게 일치하는 결과를 얻기 위해서는 case when 구문을 사용해야 한다. Or..

데이터베이스 2023.04.21

2023 Go-lang(Go 언어) 장단점/추이

개요 지난 2~3년간 Go언어에 대해 집중적으로 관심이 좁혀졌던 것에 비해, 최근(2023)에는 Go-lang에 대한 관심이 식은것같아 시장 상황이 궁금하여 다음과 같은 글을 작성하게 되었다. 선요약 대한민국에서 Go언어로 주력으로 나가기는 어렵다. Go를 첫언어로 선택하기보다는 Java, Python 등이 많음. Go는 Type강제가 심한 언어이므로, OOP를 추구하는 다른언어들과 특징이 다르므로 선뜻 선택하기는 어려운편. C언어를 대체로 리팩토링하기에는 이르다고 생각. Go언어 특징 • 편의성 :동시성 기능 중 일부는 언어 자체에 내장. 'http 패키지'와 같은 고 표준 라이브러리 패키지로 제공된다. 자동 메모리 관리 기능을 지원. 파이썬 등의 스크립팅 언어와 달리 고 코드는 빠르게 실행되는 네이티..

Nexus/FW버전/OpenShift/베어메탈/Pod(파드)

1. Nexus Repository maven 저장소와 동일한데, 서버에 직접 설치해서 라이브러리도 직접 올려놓고 쓴다고 보면 된다 FW을 비롯한 프로젝트 의존성 주입을 받기 위해 활용. pom.xml(maven) 또는 build.gradle(gradle) 파일에 명시해놓은 라이브러리들을 다운 받을 때 이용한다 2. FW버전 : Snapshot, Release... 스프링 부트의 버전 주기 SNAPSHOT -> M -> RC -> RELEASE (GA) -> SNAPSHOT (Next Version) 3. OpenShift : 가속화된 애플리케이션 개발을 위해 도커 컨테이너와 데브옵스 도구를 사용하는 쿠버네티스의 지원 배포판 -> 쿠버네티스(관리를 위한) 상위개념 오픈시프트는 베어메탈, 가상머신, 클라우..

Spring/SpringBoot 2023.02.27

2022년 블로그 수익 및 기부

2022년 주변인들의 좋은 소식이 들리고 저 또한 좋은 소식을 전해드릴 수 있게 되었습니다. 제 블로그에 방문해주신 모든 분들, 올해 행운 가득한 한 해 마무리 되시길 바랍니다. 개인을 위해 달려온 저는, 대의를 위한 마무리로 한 해를 마무리 하려고 합니다. 2022년 블로그 수익 2022년 구글 애드센스로 $100정도의 수입을 얻었습니다. 부진했던 2022년 블로그 운영임에도 많은 분들이 관심을 갖고 방문해주신 덕분에 얻은 결과라고 생각합니다. 그래서 이 수익을 저만을 위한 것이 아닌 좋은 곳에 쓰였으면 좋겠다는 생각이 들어서 생애 첫 '기부'를 실천하기로 결심하였습니다. 마침 강민경(다비치) 유튜버가 기부를 하는 영상을 보고, 조금이나마 보탬이 되었으면 좋겠다는 생각으로 기부를 다시 한번 다짐했습니다..

일상 포스팅 2022.12.10

SW마에스트로 13기 최종 회고, 추후 계획

SW마에스트로 13기(2022.04-2022.11) 하며, 다양한 출신, 분야, 성격의 개발자들을 만났습니다. 진행과정 본 프로젝트는 크게 다음과 같이 진행됐습니다. - 기획 심의 1,2차(1차에 실패하여 2차까지 진행) - 중간 평가 - 최종 평가 위 과정에서 백엔드 개발자 1명과 프론트 개발자 1명, 그리고 나(백엔드) 이렇게 셋이서 프로젝트를 진행했습니다. 더불어, Expert, 멘토 세분, 멘토님이 소개시켜주신 헬스 트레이너와 디자이너 두분과 그 외에도 다른 비정규 멘토님 여럿 분들께 조언을 얻었습니다. 노력 다양한 방면으로 기획, 디자인, 설계, 개발, 배포, 마케팅, 유지보수를 경험했습니다. 백엔드 개발자로서 Java SpringBoot 개발의 비약적인 성장이 있었다고 생각합니다. 코드 리팩토..

개발자 2022 하반기 취준 회고

2022년 하반기, 학교와 SW마에스트로를 병행하며 취업준비 시작. 지원 직무는 서버 개발자로서 다양한 IT 분야에 지원했다. 면접 스터디는 지인과 함께 CS학습을 위한 스터디 외에는 오픈 채팅방에서 면스(면접 스터디)와 같은 것은 일체 진행하지 않았다. 그렇기 때문에, 본 글은 필자의 주관적인 취업 전략과 팁이 남들과는 상이 할 수 있는 점 참고바란다. 학업, 연수활동을 병행하며 일정이 겹쳐서 시험에 응시하지 못한 곳이 매우 많았다. 서류 전형 자기소개서(서류 전형) 합격은 약 30여개중 20여개가 붙으며 매우 좋은 성과를 보였다. 심지어, 회사명을 잘못 기입하거나 자기소개서 내용을 중복하여 실수로 제출한 실책이 있었음에도 통과하는 성과가 있었다. 이 글을 보는 취준생이라면, 본인이 자기소개를 실수로 ..

케이스티파이 케이스 구매👻

Show Your Colors | CASETiFY CASETiFY - 아이폰 15/ 아이폰 15 플러스/ 아이폰 15 프로/ 아이폰 15 프로 맥스 & 각종 테크 액세서리를 위해 뛰어난 보호력은 물론 지속가능성까지 갖췄습니다. www.casetify.com (자랑글) 케이스티파이에서 케이스를 구매했다! 케이스는 매우 튼튼하게 느껴졌고, 배송은 약 10일 안팎으로 소요됐다. 장미셸 바스키아는 미국에서 태어난 작가이자 그라피티 예술가이다. 아버지가 아이티계, 어머니가 푸에르토리코계다. 그는 1970년대 뉴욕에서 그라피티 그룹 SAMO의 일원으로 처음 이름을 날렸다. https://www.casetify.com/ko_KR/co-lab/basquiat-2022? Basquiat 다시 돌아온 케이스티파이 x 장 ..

IT제품리뷰 2022.11.29

개발 앱 : Sporty Note(스포티노트, 운동 방법과 기록을 쉽게)

1️⃣ 프로젝트 소개 방법과 기록을 한번에, 헬스하는 사람을 위한 전문 헬스 노트 : Sporty Note는 헬스 초보자도 제공되는 운동 리소스들을 통해 각 부위별로 자신의 팁과 방법을 작성함으로써 자신만의 차별화된 운동 방법을 만들 수 있으며 이와 함께 진행하는 나의 헬스 루틴과 기록을 통해 차별화된 운동을 도와주는 헬스 노트 플랫폼 앱입니다. 정성적 데이터 : 운동 기구별 운동 방법에 대해, 각 신체 부위 별 주의할 점을 세분화 하여 제공합니다. 정량적 데이터 : 100가지 이상의 운동 종류와 운동 일지 기록에 필요한 세트 수, 무게, 운동 종류별 그래프 등을 제공합니다. 2️⃣ 목적 및 필요성 운동 초심자가 느끼는 기구 사용에 대한 부담감을 줄여주기 위한 접근성이 좋고 효율적인 환경이 필요함. 운동..

데드락(=교착상태)/사용자수준&커널수준 쓰레드/외부단편화&내부단편화/Context-Switching/Swapping

교착상태란? - 1번째 스레드는 2번째 쓰레드가 들고 있는 객체의 락이 풀리기를 기달리고, 2번째 쓰레드도 1번째 쓰레드가 들고 있는 객체의 락이 풀리기를 기다리는 상황. - 즉, 모든 쓰레드가 "무한 대기 상태" 교착상태의 4가지 조건 1. 상호배제 : 한번에 한 프로세스만 공유 자원 사용. 공유 자원에 대한 접근 권한이 제한된다. 자원 양이 제한되어 있어도 교착상태 발생 가능. 2. Hold and Wait(점유대기) : 공유 자원에 접근권한을 가진 프로세스가 양보하지 않고 갖고 있는 상태로 다른 자원 접근 권한 요구. 3. 선취(비선점) : 한 프로세스가 다른 프로세스의 자원 접근 권한을 강제로 취소할 수 없다. 4. Circular Wait(순환대기) : 두 개 이상의 프로세스가 자원 접근을 기다..