본문 바로가기

UTC 를 timezone 에 맞게 변경하기 mongoDB 에서는 시간이 UTC 로만 저장이 됩니다. 별별 짓을 다해 봐도 UTC 로만 저장됩니다. 공식 문서에도 UTC 로만 저장되니 알아서 Application layer 에서 수정해서 쓰라고 합니다. 아~~~ timezone에 맞게 UTC를 변환해주는 라이브러리로 moment-timezone 이 있습니다. 쓰는 방법은 1. 설치 : # yarn add moment-timezone 2. 코드 (도서 : 리액트를 다루는 기술 p472, src/api/posts/posts.ctrl.js - list 중 일부) // 라이브러리 삽입 const moment = require('moment-timezone'); (...) exports.list = async (ctx) => { const page = pa..
webpack4 코드 스플리팅 책에 쓰인 예제는 webpack 2 or 3 기준으로 작성된 것으로 보입니다. webpack 4 기준으로 예제코드를 수정합니다. p392 config/webpack.config.dev.js -- entry AS-IS entry : [ require.resolve('./polyfills'), require.resolve('react-dev-utils/webpackHotDevClient'), require.appIndexJs, ], TO-BE webpack4 에서는 설정파일이 통합되어있습니다. 실제 수정해야 할 파일은 다음과 같습니다. config/webpack.config.js entry: { app : [ isEnvDevelopment && require.resolve('react-dev-utils/we..
The server time zone value 'KST' is unrecognized or represents more than one time zone 오류 해결 DB 의존성을 추가하였는데도 'KST' 라는 서버 타임존을 알수 없다는 오류가 발생하면서 DB에 연결할수 없었습니다. 심각: StandardWrapper.Throwable org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [spring/applicationContext-database.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to in..
Driver net.sf.log4jdbc.sql.jdbcapi.DriverSpy claims to not accept jdbcUrl 오류 해결하기 Spring mvc 에서 mysql DB 프로퍼티 설정하고 연결하면 아래와 같은 오류 메시지가 나오면서 DB 연결이 되지 않습니다. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [spring/applicationContext-database.xml]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer...
jQuery 상위 요소 가져오기(parents, closest) $(selector).parents(selector) parents 함수는 parents 인자값으로 잡히는 모든 상위 요소를 반환한다. vouchers.pdf x x 예를들면, 예제 HTML 코드처럼 태그가 중첩되어 있을때 $('.uploadResult span:first').parents("div")를 실행하면 결과 객체는 배열이 나온다. 즉, selector로 잡히는 모든 상위 요소를 반환한다. 반환된 배열에는 [div, div.uploadResult] 태그가 있다. $(selector).closest(selector) closest 함수는 parents 함수와 달리 셀렉터로 잡히는 상위 요소중 가장 근접한 하나를 반환한다. $('.uploadResult span:first').closest("div..
이미지 파일의 판단 :: checkImageType(File file) 파일이 이미지 타입인지 확인하기 위해 Files.probeContentType() 사용하여 메소드를 만들었으나 이미지 파일인데도 false 를 반환하였다. private boolean checkImageType(File file){ try{ String contentType = Files.probeContentType(file.toPath()); return contentType.startsWith("image"); } catch(IOException e){ e.printStachTrace(); } return false; } 디버그를 해보니 Files.probeContentType() 가 null 을 반환하여 false 가 리턴됨. 해결책을 찾기 위해 검색을 해봤으니 버그라고 한다. https://st..
jQuery.ajax(options) 옵션 정리 HTTP 통신에서 페이지를 로드합니다. 이 함수는 jQuery의 AJAX 통신의 기본 부분에서 실제로 $.get 및 $.post 같은 함수를 사용하는 것이 쉽게 구현할 수 있습니다. 그러나 이러한 추상화된 함수는 구현의 용이성과 교환에 오류시 콜백과 같은 복잡한 기능을 잃고 있습니다. 그런 처리를 구현하려면, 역시 핵심이다이 함수를 사용해야합니다. $. ajax 함수는 반환값으로 XMLHttpRequest 객체를 반환합니다. 대부분의 경우이 개체를 직접 조작하는 것은 없다고 생각되지만, 예를 들어 던져 버린 요청을 중단하는 경우 등, 필요하면 이용하십시오. 이 함수는 인수를 하나만 취하지만, 실제로는 해시에서 키-값 조합은 많은 옵션을 받습니다. 다음에 그 목록을 싣고 있으므로 참고하시기 바랍니다. ur..
Log4j 로그 패턴 패턴 %p : debug, info, warn, error, fatal 등의 priority 가 출력된다. %m : 로그내용이 출력됩니다. %d : 로깅 이벤트가 발생한 시간을 기록합니다. 포맷은 %d{HH:mm:ss, SSS}, %d{yyyy MMM dd HH:mm:ss,SSS} 같은 형태로 사용하며 SimpleDateForum에 따른 포맷팅을 하면 된다. %d{ABSOLUTE} %d{DATE} %d{ISO8601} %t : 로그이벤트가 발생된 쓰레드의 이름을 출력합니다. %% : % 표시를 출력하기 위해 사용한다. %n : 플랫폼 종속적인 개행문자가 출력된다. rn 또는 n (?) %c : 카테고리를 표시합니다. 예) 카테고리가 a.b.c 처럼 되어있다면 %c{2} 는 b.c 가 출력됩니다. %C :..