분류 전체보기
-
JAVA Excel 읽고 쓰기JAVA 2021. 6. 2. 13:59
JAVA 에서 Poi 라이브러리를 사용하면 EXCEL 을 편집할 수 있다 기존 Excel 파일을 읽어서 그 위에 새롭게 편집을 하고 싶을 때 사용하면 좋은 예제이다 위 엑셀 파일에서 메뉴1, 메뉴2, 메뉴3 인 Header 에 메뉴4, 메뉴5 를 추가하고 싶고 Cell 의 값을 새로 바꾸고 싶다 Excel 읽고 쓰기 순서 엑셀 파일을 읽고 다시 쓸 필요가 있다 그 순서는 아래와 같다 1. FileInputStream 으로 파일 읽기 2. XSSFWorkbook 객체 생성하기 3. XSSFSheet 객체 생성 4. XSSFRow 첫번째 Row 가져와서 수정하기 5. 2번째 Row 부터 데이터 삽입 6. FileOutputStream 으로 파일 저장하기 7. 자원반환 Code 코드로 1~5 을 살펴보자 St..
-
JAVA File 열기, 삭제, 이름 바꾸기 (file open, delete, rename)JAVA 2021. 6. 2. 13:07
File 을 열기, 삭제, 이름 바꾸는 기능이 있다 예시로 알아보도록 하자 파일 Open 1. 우선 File 이름을 포함한 경로가 필요하다 자바에서는 '\' 를 입력하고 싶을 경우 \\ 로 입력해야 한다 String filePath = "C:\\Users\\giga\\sample.xlsx"; 2. File 객체를 생성하여 File 이 있는지 없는지 확인 후 Open 한다 File file = new File(filePath); if(file.exists()) { Desktop.getDesktop().open(file); } 파일 Delete 생성한 file 객체에 delete() 함수를 사용한다 file.delete(); 파일 Rename 새로운 경로를 설정하여 File 의 위치(이름만 바꾸는 것도 가능..
-
RANK, DENSE_RANK 함수Oracle 2021. 5. 24. 15:45
오라클에서 순위를 매기는 함수 중 RANK, DENSE_RANK 함수가 있다 특정 범위(PARTITION) 내에서 순위를 구할 수도 있고 전체 범위에 대한 순위를 구할 수도 있다 RANK 와 DENSE_RANK 의 차이점은 문법을 활용하는 방법은 똑같으나 동일한 순위를 하나의 건수로 취급하는 건 DENSE_RANK 이다 예를들어 RANK 의 경우 : 1등, 2등, 2등, 4등 DENSE_RANK 의 경우 : 1등, 2등, 2등, 3등 DENSE_RANK 의 경우 2등이 2개이지만 하나의 건수로 취급하여 다음 등수는 3등이 된다 함수의 사용법은 아래와 같다 전체 범위에서 속성을 기준으로 순위를 구함 RANK() OVER(ORDER BY 속성 DESC/ASC) 속성1을 특정범위로 하여 속성2를 기준으로 순위..
-
Oracle EXISTS 서브쿼리 - 존재하는지 안하는지 확인하는 방법Oracle 2021. 5. 24. 12:00
Oracle 에서 해당 조건을 만족하는 행이 있는지 없는지 확인하기 위해 EXISTS 라는 서브쿼리가 있다 예를 들면 선수정보를 가지고 있는 PLAYER 라는 테이블이 있다 PLAYER_ID PLAYER_POSITION TEAM_ID PLAYER TEAM_ID 가 K02 이고 PLAYER_POSITION 이 GK 인 선수를 조회하고 싶다는 쿼리를 작성해 보자 SELECT * FROM PLAYER P1 WHERE P1.TEAM_ID = 'K02' AND EXISTS ( SELECT 1 FROM PLAYER P2 WHERE P1.TEAM_ID = P2.TEAM_ID AND P2.POSITION = 'GK' ); EXISTS 는 무조건 서브쿼리로 작성해야한다 또한 메인쿼리에서 사용한 컬럼을 그대로 사용할 수 ..
-
CASE - 값에 따라 다르게 SELECT 문 만드는 법Oracle 2021. 5. 21. 10:39
조회하는 값에 따라 SELECT 문에 다른 속성값을 표현하고 싶다면 CASE 문을 사용하면 된다 = DECODE 와 기능이 같은 문법. 조건이 여러개가 붙는다면 코드가 지저분해져서 다중조건이라면 DECODE 를 사용하는 편이 낫다 CASE 사용법1 - 속성, 값 비교 CASE 속성 WHEN 값1 THEN 속성이_값1일때의_값 WHEN 값2 THEN 속성이_값2일때의_값 ELSE 전부_거짓일때의_값 END 위의 구문을 SELECT 절의 속성자리에 넣어주면된다 CASE 사용법2 - 조건으로 비교 CASE WHEN 조건1 THEN 조건1이_참일때의_값 WHEN 조건2 THEN 조건2가_참일때의_값 ELSE 전부_거짓일때의_값 END 예제 VM_CHECK_SHEET 에서 STAMP, MODEL_NAME 그리고 ..
-
Dialog 생성 시 기본으로 생기는 Ok, Cancel 버튼 사용 및 CustomJAVA/SWT 2021. 5. 14. 08:06
SWT 에서 Dialog 를 생성할 때 기본으로 제공되는 Button 이 있다 Default createButtonBar Eclipse 에서 Alt + Shift + S -> v 를 누르고 createButtonBar(Composite) 함수를 클릭한다 @Override protected Control createButtonBar(Composite parent) { // TODO Auto-generated method stub return super.createButtonBar(parent); } 생성된 기본 버튼 모양이다 OK 를 눌렀을 때의 로직을 코딩하고 싶다면 okProcessed() 함수를 오버라이드하면 된다 createButtonBar 커스터마이징 만약 위의 사진과 같이 OK, Cancel 이..
-
정보처리기사 실기 2021년 1회차 / 3주만에 합격하기자격증 2021. 5. 6. 14:30
2021년 1회차 실기시험을 쳤다!! 필기 필기는 2020년 1회때 땄으나,,, 어영부영 실기 시기를 놓치고,,, 드디어 실기시험을 쳤다 필기는 기사퍼스트 강의로 준비를 했다 기사퍼스트 강의는 생각보다 괜찮았다! 나는 전공자도 아니고 비전공자도 아닌 애매한 위치였기 때문에 몰랐던 지식을 강의로 많이 알게 되었다 강의가 생각보다 꼼꼼하기 때문에 이것까지 알아야하나? 하는 부분이 많았지만 공부하는 겸 열심히 봐뒀던거 같다 공부하는데 의의를 두는게 아니라면(빠르게 자격증만 따고 싶다면) 굳이 기사퍼스트 강의는 듣지 않아도 괜찮을것 같다 필기는 합격률이 높은 편이라 한 번에 합격했다 실기 실기,, 를 치기까지 얼마나 고민이 많았던가.. 작년 2020년 정보처리기사가 워낙 악명이 높았던 터라 시험준비조차 두려웠었..
-
문자열 String 이 숫자인지 확인하는 방법JAVA 2021. 3. 30. 08:51
String 이 숫자로 이루어져있는지 확인하고 싶을 때가 있다 이럴땐 Character.isDigit() 함수를 사용하면 된다 boolean isNumeric = true; String number = "123"; for(int i = 0; i < number.length(); i++) { if(!Character.isDigit(number.indexOf(i))) { isNumeric = false; } } 문자를 하나씩 조회하면서 숫자인지 판별할 수 있다