에러 : ORA-01476: divisor is equal to zero 아래와 같이 .PJT.COUNT가 0이여서 0인 분자로 분모를 나누려고 할 때 오류가 발생하였다. 즉, 제수가 0일때 발생하는 문제이다. SELECT ( SUM(START_RATIO) / PJT.COUNT ) AS RATIO FROM GRD_START_RATIO WHERE TO_CHAR(BATCH_DATE, 'YYYYMMDD') = TO_CHAR(SYSDATE -1 , 'YYYYMMDD') AND PJT_SYSTEM = pmo.PLANTCODE GROUP BY PJT_SYSTEM 해결방법은 CASE WHEN 문이나 DECODE를 활용하여 0일 때 나누어지지 않도록 처리 해야 한다.
[Windows] 긴 파일명 파일 삭제하기 원본 파일 이름이 파일 시스템에서 지원하는 길이보다 깁니다. 라는 둥. 파일 확장명이 너무 깁니다 라는 등의 문구가 뜨면서 삭제가 되지 않을때 쓰는 방법 구글링 결과, 여러 방법이 있었으나 아래 방법이 가장 깔끔했음 삭제할 파일이 들어있는 폴더명: E:\sts-bundle 빈 폴더를 하나 생성: E:\empty(폴더명) 윈도-> 실행 -> cmd창을 열어서 해당 디렉토리가 있는 곳으로 간다. E: 아래와 같이 친다 robocopy E:\empty E:\sts-bundle /MIR 명령어 : robocopy E:\empty E:\sts-bundle /MIR 위와 같이 치고 나면 둘 다 빈 폴더가 되어 삭제가 가능해진다.
IntelliJ에서는 기본적으로 xml파일이 포함되지 않는 것 같다. 그래서 pom.xml의 태그 안에 아래내용을 추가해야 한다. src/main/java **/*.xml @Configuration 을 통한 설정 package com.kyhslam; import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.context.annotation.Bean; import org..
Sprngboot에서 DataSource설정 시 SID와 Service Name일 경우 설정 값이 다르다. SID jdbc:oracle:thin:@//hostname:port:sid Service Name jdbc:oracle:thin:@//hostname:port/serviceName spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver #spring.datasource.url=jdbc:oracle:thin:@10.111.11.11/PLMDEV2 -- SID spring.datasource.url=jdbc:oracle:thin:@10.111.11.11:1521:PLMDB -- Service Name spring.datasource.us..
참고 URL : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty Reactivity 기초 위의 소스 라이브러리화 하기 브라우저에서 변수에 값을 대입해보면 실시간으로 변경되는 것을 볼 수 있다.
📝 Vue.js 란? 뷰는 UI화면 개발 방법 중 하나인 MVVM패턴의 뷰 모델에 해당하는 화면 단 라이브러리이다. MVVM패턴이란 모델(MODEL) - 뷰(View) - 뷰 모델(ViewModel)로 구조화하여 개발하는 방식을 의미한다. 이러한 방식으로하는 이유는 화면 요소들을 제어하는 코드와 데이터 제어 로직을 분리하여 코드를 더 직관적으로 이해할 수 있고, 추후 유지보수가 편해지기 때문이다. 양방향 데이터 바인딩과 단방향 데이터 흐름을 가지고 있다. 양방향 데이터 바인딩이란 화면에 표시되는 값과 프레임워크의 모델 데이터 값이 동기화되어 한쪽이 변경되면 다른 한쪽도 자동으로 변경되는 것이다. 단방향 데이터 흐름은 컴포넌트의 단방향 통신을 의미하는데 컴포넌트 간에 데이터를 전달할 때 항상 상위 컴포넌트..
VS CODE의 왼쪽 Extensions에서 플로그 인들을 설치한다. - Vetur - Night Owl - Material Icon Theme - Live Server - ESLint - Prettier - Auto Close Tag - Atom Keymap
윈도우10의 버전에 따라서 도커 툴박스를 설치해 줘야 한다 설치주소 https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_Docker_Toolbox_%EC%84%A4%EC%B9%98 윈도우 Docker Toolbox 설치 - 제타위키 다음 문자열 포함... zetawiki.com 설치 후, Docker Quickstart Terminal 실행 도커 설치 완료 및 버전 확인
스프링 부트 ExceptionHandler 스프링부트에서 ExceptionHandler를 기본적으로 등록하여 Exception을 처리하고 있다. 기본 예외 처리기는 스프링에서 자동적으로 등록하는 BasicErrorController에서 관리한다.(에러 발생 시 JSON 형식으로 리턴한다) 커스텀 Exception 핸들러, 커스텁 Exception 클래스를 만들어서 예외를 처리 할 수 있다. Http Status 코드에 맞게 예외 발생 시 html 문서를 클라이언트에게 전송할 수 있다. 소스코드 package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfig..
배열 선언 방식 int[] arr = new int[3]; int arr2[] = new int[3]; 선언 후, 값 대입 public static void main(String[] args) { int[] arr = new int[3]; arr[0] = 10; arr[1] = 20; arr[2] = 30; } 선언하면서 초기화 public static void main(String[] args) { int[] array = {7,6,5,8,3,5,9,1}; System.out.println(array.length); }
| 병합정렬(Merge Sort) 대표적인 분할정복 방법을 채택한 알고리즘 이다. 퀵 정렬과 동일하게 O(N * logN)의 시간 복잡도를 가진다. 병합정렬은 정확히 반씩 나눈다는 점에서 최악의 경우에도 O(N * logN)을 보장한다. 하나씩 나누고 합쳐지면서 정렬을 수행한다. 즉, 합쳐지는 순간에 정렬을 수행한다. 왼쪽 집합의 i와 두번째 집합의 j를 증가시키면서 비교연산을 통해 비어있는 새로운 배열에 넣어준다. 병합정렬을 구현할 때 중요한 부분은 반드시 정렬에 사용되는 배열을 전역변수로 선언해야 한다는 것이다. 기존의 데이터를 담을 추가적인 배열공간이 필요하다는 점에서 메모리 활용이 비효율적이라는 문제가 있다. 구현 소스 package org.kyh.algorithm; public class mer..
$.ajax() 사용 방법 비동기 요청 시 사용하는 방법이다. index.jsp Controller package org.kyhslam.controller; import java.text.DateFormat; import java.util.Date; import java.util.Locale; import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotat..