분류 전체보기
-
[JavaScript] axios를 이용한 파일 업로드JavaScript 2023. 8. 22. 19:29
/* 파일 전송 */ function fileFormSubmit() { // 파일 데이터 const formData = new FormData(); formData.append("file", file.files[0]); // 폼 전송 axios({ method: 'post', url: '/admin/excel', headers: { 'Content-Type': 'multipart/form-data' }, data: formData, timeout : 3000, }).then(function (response) { alert("데이터 전송 완료"); }).catch(function (error) { alert(error); }).finally(function () { }); }
-
[JavaScript] 파일첨부 파일명, 확장자 추출JavaScript 2023. 8. 22. 19:26
HTML 엑셀업로드 JavaScript // 파일명 불러오기 const file = document.getElementById('file'); let path = file.value; let fileName = path.substring(path.lastIndexOf('\\')+1, path.length); // 확장자 추출 let ext; if(fileName.indexOf('.') >= 0) { ext = fileName.substring(fileName.lastIndexOf('.')+1, fileName.length); } else { ext = ''; } // 파일 검증 if (file == "") { alert("파일이 없습니다.") return false; } else if (ext.toL..
-
[mapper] xml에서 PLSQL 쿼리 작성법SpringFramework 2023. 8. 22. 18:59
/* AdminMapper.admin */ { CALL DECLARE BEGIN -- MERGE MERGE INTO a USING b ON (a.CODE = b.CODE) WHEN MATCHED THEN UPDATE SET a.NAME = b.NAME WHEN NOT MATCHED THEN INSERT (SEQ, CODE, NAME) VALUES (SEQ.NEXTVAL, b.CODE, b.NAME); LOOP ... END LOOP; END }
-
[Oracle] SQL 튜닝SQL 2023. 6. 12. 16:38
1. PLAN 생성 과정 ① 테이블 통계정보 갱신 각 DB설정에 따라 테이블 통계정보를 갱신하는 주기가 있다. 가장 최근에 통계정보가 갱신된 날짜는 Last analyzed 를 보면 된다. 통계정보가 자동으로 갱신이 되면 옵티마이저가 plan 을 새로 짜게 된다. sql id 당 childnum 만큼의 plan 을 뽑는다. 대용량 테이블에서 테이블 통계정보가 자주 갱신된다면 실행계획도 그때마다 바뀌게 되어 가장 최적의 plan 으로 실행되지 않을 수 있다. 그러므로 대용량 데이터일 경우 가장 최적의 plan 이 계속 유지되도록 통계정보를 갱신하지 않는 방법이 좋다. 튜너분이 추천해준 것은 다음과 같다. 1) 데이터량 1000건 미만 → 갱신 X 2) 데이터량 100만건 → 갱신 O 3) 데이터량 1억건 ..
-
[Oracle] Index (인덱스)SQL 2023. 6. 12. 16:05
1. 인덱스 ① 인덱스 생성 기본 equal은 먼저 배치. range는 대체로 맨 뒤에 배치하는게 좋음. COLUMN 조건형식 예 A = idx B 범위(range) date C = name index1 : B, A → X index2 : A, B → O ② 인덱스에 사용할 컬럼 선택 기준 - distinct 값의 종류가 많은 컬럼이 앞에 나와야 함. 예를들어 distinct 가 2개인 컬럼의 경우 인덱스의 의미가 없어짐. - 사용빈도 별도의 인덱스를 생성하는 게 좋음 ③ 주의 인덱스 생성 시 paraller (= 쓰레드 비슷) 를 설정하면 더 빠르게 생성됨. 추후에 꼭 다시 0으로 바꿔줘야 함. paraller 은 개발자는 되도록 쓰지 말고 전문가의 관리하에 사용해야 함. * 출처 : SQL 전문 튜너..
-
[백준 2750] [Kotlin] 수 정렬하기백준 알고리즘 2021. 12. 21. 11:16
import java.io.* fun main() { val br = BufferedReader(InputStreamReader(System.`in`)) val N = br.readLine().toInt() val arr = ArrayList() // 숫자를 배열에 넣기 for (i in 1..N) { val num = br.readLine().toInt() arr.add(num) } // 배열 정렬 arr.sort() // 결과 for (k in arr) { println(k) } br.close() } 메모리 시간 언어 코드 길이 15144 KB 168 ms Kotlin (JVM) 363 B 배열 정렬 sort() https://kotlinlang.org/docs/list-operations.html..