Author Archives: itpsolver

콘 쉘 (korn shell, ksh) 관련 사항

By | 10월 29, 2015

* set -0 vi : 커맨드라인에서 ESC 입력시 vi 스타일의 명령어를 사용할 수 있다. k : 최근 입력 명령어 (누를수록 이전 명령어를 찾는다.) j : k와 반대방향으로 탐색 ESC\ 를 사용하여 디렉토리명 등을 자동완성(auto complete)할 수 있다. (참고: set -o emacs 사용시에는 ESC 2회 연타로 사용 가능)          

이클립스(eclipse)에서 원격 디버깅(remote debug) 하기

By | 10월 29, 2015

1. 서버 JVM 기동 스크립트에 아래의 VM argument(java option)를 추가하여 기동한다. (address에는 원하는 포트를 설정) -Xdebug -Xrunjdwp:transport=dt_socket,address=8899,server=y,suspend=n     2. 이클립스 설정 Run > Debug Configuration > Remote java application 을 생성한 후 실행한다.(1에서 설정한 포트와 설정을 맞출 것)     3. 이후 서버(원격)에서 코드 수행중 break point 에 해당하는 코드를 지나면 로컬 이클립스에서 디버깅을… Read More »

이클립스(eclipse)로 개발을 하면서 파일을 생성했는데(text file) 이클립스가 새로고침(refresh) 되지 않아서, 어플리케이션에서 바로 그 파일을 가져다 쓸 수 없는 상황에 대한 해결책

By | 10월 29, 2015

이클립스 > Window > Preference > General > Workspace > Refresh using native hooks or polling 을 체크한다!! 이렇게 하면 이클립스의 탐색기에서 F5 키를 누른 것과 같은 효과가 주기적으로 발생한다.      

Oracle 에서 테이블(table)을 truncate할 수 없을 때

By | 10월 27, 2015

– 출처 : https://asktom.oracle.com/pls/asktom/f?p=100:11:::::P11_QUESTION_ID:399218963817 –   자식 테이블이 존재할 경우에는 테이블을 truncate할 수 없다. 정 하고 싶으면 FK constraint 를 삭제한 후 truncate 하고 다시 FK를 생성하라고 한다. 귀찮으니 그냥 delete를 사용하자~    

이상하게 인터넷 속도가 느릴 때 체크할 사항 (DNS 문제가 아닌지 점검하자!)

By | 10월 16, 2015

얼마 전에 공유기를 교체했는데, 지금까지 사용하던 것 중에 가장 비싸면서 가장 스펙이 좋은 제품이었다. 그런데 이상하게도 인터넷은 이전보다 더 느려진 느낌이 들었다. (스마트폰으로 공유기에 연결해서 웹페이지를 열면 최소 5초 이상 걸렸다)   왜일까… 생각하면서도 귀찮아서 그냥 내버려 두고 있었는데, 몇 주간 사용하다 보니 이상한 점이 눈에 띄었다. 바로 파일 다운로드 속도는 거의 차이가 없을 뿐만… Read More »

java interface method 에 붙은 throws Exception 구문을 코드 인스펙터가 지적했다. (그냥 Exception 말고 디테일한 Exception을 던지라고) 어떻게 해야 하는가??

By | 10월 14, 2015

나도 잘은 모르겠으나… 해당 메서드의 implementation 에서 checked exception을 throw 하는 API를 호출할 가능성을 배제할 수 없으므로, (ex: 외부 라이브러리 메서드 호출), 이 부분은 그냥 유지하는 게 좋지 않을까 싶다.      

Maven Nexus 서버에 라이브러리(library)를 등록하여 이클립스(eclipse) 프로젝트에서 사용하기

By | 10월 14, 2015

1. Nexus에 라이브러리 등록 – Repositories > 3rd party 선택 후 아래 탭에서 Artifact Upload 선택 – jar에 pom.xml 파일이 있으면 그걸 사용 (보통 jar 파일의 META-INF 하위에 존재한다고 함) – 아니면 GAV parameters를 직접 입력 – Group: 패키지명 같은거…? – Artifact: jar파일명 같은거…? – Version: 1.0.0…? – Artifact upload 화면에서의 classfier 에 대하여 -… Read More »

java.util.Scanner 와 while 문을 사용하여 콘솔(console) 입력을 계속 받아서 수행하는 프로그램 샘플

By | 10월 14, 2015

  Scanner scanner = new Scanner(System.in); while(true){ System.out.println(“실행할 서비스를 선택하세요 : “); String input = scanner.nextLine(); //block loop try{ //input 값으로 분기하여 필요한 로직 수행 //이 안에서 Exception 발생 가능성 있음 }catch(Exception e){ scanner.reset(); //Exception이 발생해도 중지되지 않고 계속 입력을 받을 수 있도록 처리 } }

Oracle SQL Developer에서 '&' 가 들어간 문자열을 INSERT할 때 파라미터 바인딩을 시도하는 문제

By | 10월 14, 2015

(1) INSERT 내용에 있는 & 앞에 모두 \를 붙여서 escape 한다. (2) INSERT 작업 전 set escape on; 을 먼저 수행한다. (3) INSERT 작업을 수행한다.     ———————————————- 이하 20161119 추가정보 ———————————————- * REGEXP_LIKE() 를 사용한 정규식 검색시     – set escape on 상태라면 → “\” 문자를 검색할 때 “\\\\” 로 검색해야 한다.    … Read More »

NoClassDefFoundError 의 특이한 케이스

By | 10월 1, 2015

로컬에서 잘 돌던 A.java 파일이 개발서버에서 Runtime시 NoClassDefFoundError 를 뿜고 있었다. 에러로그를 보니 A.java 가 외부 라이브러리 클래스 (jar 에 포함된 클래스) B.class 의 static method 를 호출하는 순간이었는데, 문제는 B의 static method가 JNI library(*.so 파일)를 호출하는데, JVM을 실행시킨 user의 권한이 *.so 파일을 실행시키는데 부족했기 때문이었다. 그래서, 해당 *.so 파일들의 권한을 750 => 755 로 모두… Read More »