본문 바로가기

[개발] Programming197

이클립스 빌드 안될 때 해결 방법 이클립스 빌드 안될 때 해결 방법이클립스로 자바 프로젝트를 개발하다가 갑자기 빌드가 안될 때가 있다.문법 오류가 발생한 것도 아니고, 멀쩡히 돌던 프로그램이 빌드가 안된다,,이를 때는 여러 요인이 있을 수 있어 정리해 봤다. 목차프로젝트 Clean라이브러리 오류 확인라이브러리 재등록SVN cleanup    01 프로젝트 Clean평상시 개발하면서 문제가 생기면 먼저 Clean 부터 해본다.Clean 한 후에는 자바 빌드 경로를 찾아가서 컴파일이 됐는지 확인한다. 이클립스 메뉴 > Project > Clean   Clean을 돌려보면 안 보이던 오류도 뜨기 때문에 원인을 찾기 쉽고,라이브러리 오류가 있다면 프로젝트 좌측에 빨간 느낌표가 생긴 것이다. Clean 할 때는 아래와 같이 프로젝트가 뜨게 되는데.. 2024. 11. 15.
오라클 null 체크 함수 NVL, NVL2 사용법과 예제 오라클 NULL 처리 오라클 SELECT 쿼리를 작성하다 보면 null 데이터를 자주 접하게 됩니다.널 일 때 다른 데이터로 치환하고 싶은 경우 간편하게 사용할 수 있는 오라클 내장 함수가 NVL, NVL2 입니다.  NVL은 단순히 null 여부만 판단하여 치환하는 함수인 반면,NVL2는 null 일 경우 조건식을 넣어 decode 함수처럼 사용할 수 있습니다.그럼 예시를 통해 사용 방법을 소개하고 주의사항도 공유드리겠습니다.  [ NVL을 처음 알게 되어 기뻐하는 어느 여성의 모습. ]   오라클 NULL 처리 함수 NVL 기본 형식 : NVL( null 검사할 컬럼 명, null 일 경우 )사용 예시 : AAA가 null 이면 EMPTY 가 출력됩니다.1234567-- NVL( null 검사 할 컬.. 2024. 7. 13.
젠킨스 cp failed to access Permission denied 권한 오류 젠킨스 빌드 후에 스크립트를 실행하려 하니 권한 오류가 발생했다. cp 명령어로 리눅스 서버 디렉토리를 접근할 수 있는 권한이 없기 때문. 그래서 이번 글에서는 리눅스 서버에서 jenkins 계정에 권한을 부여해 본다. 젠킨스로 빌드 후에 리눅스 서버의 특정 위치를 참조하여 복사하는 스크립트를 작성했다. 즉, 빌드 후 > cp로 파일 복사 (하나의 명령어로 구성해도 되지만, 그냥 보기 좋아서 나눠봄 ㅎㅎ) 참고로 젠킨스 스크립트에 sudo su를 추가해도 소용없다. 젠킨스 아이템 저장 후에 실행하니 오류가 떴다. 로그를 해석해 보면 cp 명령어로 접근이 실패하였다. 원인은 permission denied, 즉 권한이 없기 때문. 이미 젠킨스가 돌고 있는 서버 내에서 파일을 이동하거나 복사하더라도 접속해 .. 2024. 2. 18.
오라클 한글 바이트 수 조회 (length, lengthb 차이점) 오라클에서 한글 바이트 수를 구해야 될 케이스가 발생합니다. 이때 오라클 내장 함수로 체크할 수 있는 방법이 있어 소개해 드리겠습니다. 참고로 오라클에서 인식하는 한글이나 다국어(영어가 아닌)의 바이트 수는 UTF-8, UTF-16, EUC-KR 등의 인코딩 방식에 따라 달라집니다. 때문에 DB 컬럼 사이즈가 동일해도 인코딩 방식에 따라 저장할 수 있는 글자수가 달라지게 됩니다. 확실하게 저장 가능한 한글 수를 체크하려면 바이트를 직접 비교하면 되는데, 이때 오라클 내장함수 lengthB() 를 사용하면 됩니다. length()는 단순히 글자수만 반환하기 때문에 부정확합니다. 1 2 3 4 SELECT LENGTH('한국 서울') AS 한글_LENGTH, LENGTHB('한국 서울') AS 한글_LENG.. 2024. 2. 15.
젠킨스 플러그인 수동으로 설치하는 방 젠킨스를 운영하다 보면 어느 순간 플러그인들이 out of date 되는 경우가 있습니다. 또는 젠킨스 버전을 무심코 업그레이드했다가 플러그인 호환 오류로 서비스가 안뜨기도 하죠ㅜㅜ 그래서 이번 포스트에서는 수동으로 플러그인을 업데이트하는 방법을 소개하겠습니다. 먼저 젠킨스 관리 들어가 보면 첫 화면에 플러그 호환에 대한 오류가 있다면 확인 가능합니다. 만약 아래와 같이 아예 인식이 안 되는 플러그인들이 있다면 젠킨스를 띄우는 과정에서 중단될 수도 있습니다. 이때는 라이브러리를 젠킨스가 있는 디렉토리에 jpi 확장자로 넣은 뒤에 서비스를 띄우면 해결 가능합니다. 젠킨스가 일단 뜨기는 한다는 가정에서 설명 드리면, 젠킨스 관리 화면에서 스크롤을 내리면 '플러그인 매니저로 이동'을 찾을 수 있습니다. 다음 .. 2023. 12. 8.
오라클 날짜 계산 방법과 예제 정리 오라클에서 쿼리로 날짜를 연산하는 방법은 다양하지만, 그중에서 쉽게 계산하고 비교할 수 있는 방법을 정리해 봤습니다. 01 오라클 현재 날짜, 시간 현재 날짜와 시간을 구하는 건 두 가지 방법이 있는데, 가장 흔하게 사용하는 건 SYSDATE 입니다. 결제나 예약처럼 밀리세컨드 단위까지 봐야 한다면, SYSTIMESTAMP를 사용하면 됩니다. 1 2 3 4 SELECT SYSTIMESTAMP, SYSDATE FROM dual ; cs 현재 시간은 필요 없고, 날짜만 구하고 싶다면 형변환을 해주면 됩니다. 1 2 3 4 5 6 SELECT TO_CHAR(SYSDATE, 'YYYYMMDD'), -- 20231110 으로 표시 TO_CHAR(SYSDATE, 'YYYY.MM.DD'), -- 2023.11.10 .. 2023. 11. 10.
자바 환경변수 설정하는 방법 (윈도우 기준) 자바 환경변수 설정하는 방법 자바 개발자들이 필수로 하는 자바 환경 변수 잡아주는 방법을 공유드립니다. 참고로 해당 글은 윈도우 운영체제 기준으로 작성하였습니다. 컴퓨터에 자바 환경변수가 지정되어 있는지는 cmd에 명령어를 입력하여 알 수 있습니다. > java -version 잡혀있는 환경변수가 없다면 아래와 같이 문구가 출력됩니다. " 'java'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. " '내 피씨' 또는 컴퓨터를 마우스 우클릭하여 '속성'을 실행합니다. 윈도우 버전에 따라 다르지만, 11 기준으로는 아래와 같이 창이 뜹니다. 윈도우 10 이하는 UI는 다르지만, '고급 시스템 설정'은 동일하게 있습니다. 팝업이 뜨면 하단에 '환경 변수'를 클릭하면 됩.. 2023. 7. 21.
아웃룩 메일 회수하는 방법과 회수 성공 여부 확인 아웃룩 전송 메일 취소하기 업무를 하다 보면 가끔 실수로 메일을 보낼 때가 있습니다. 심지어 보내자마자 알아서 당황하는 경우가 종종 있는데요, 이럴 때 아웃룩에서 전송 취소(메일 회수) 하는 방법을 알려 드리겠습니다. 참고로 경험상 일부 상황에서는 회수가 되지 않기도 했습니다. 저는 직장 동료에게 보낸 메일이 회수되는 건 확인했습니다. 이제 아웃룩에서 실수로 속마음을 적은 메일을 보냈다고 가정해 보겠습니다. 실수로 메일이 보내졌네요? 엄청 당황하지만, 최대한 빠르게 회수를 해봅니다. 다시 아웃룩 메일을 더블클릭하여 창으로 띄웁니다. 가운데 '동작' 이라는 버튼이 보일 때까지 창의 너비를 키웁니다. 충분히 너비가 넓어지면 '동작' 버튼이 보입니다. '동작'을 클릭하면 메뉴가 펼쳐지는데, 여기서 '메시지 회.. 2023. 6. 24.
웹3.0 이란? 웹2.0 와의 차이와 핵심 비전 웹 3.0 이란 무엇일까? 사실 웹3.0 이라는 건 아직까지는 명확한 정의가 없다고 합니다. 현재는 지향점에 대한 아이디어는 제시됐는데, 아직 구체적인 방향은 모호한 것으로 대부분 전문가들이 말하고 있습니다. 핵심 취지는 웹 3을 통해서 대기업들이나 특정 플랫폼에 집중되어(중앙화) 있는 '데이터에 대한 소유권을 탈중앙화하여, 창작자에게 돌려주자'는 움직임입니다. 이에 가장 부합하는 모델이 메타버스라고 합니다. 예를 들어 설명하면, 인스타나 페이스북 등 SNS을 통해 생성한 장착물의 소유권은 플랫폼 업체로 가게 되어 있습니다. 극소수의 거대 IT기업들이 데이터를 독식하고 개인의 정보를 소유/활용하여 금전적 이득을 챙기고 있습니다. 이에 대한 권리를 개개인에게 돌려주자는 움직임입니다. 다른 전문가의 정의를 .. 2023. 6. 15.