최신글
- Javascript [JS] Array 중복제거 new Set 이용하기const arr = [ { code: 'a', name: '가나다' }, { code: 'b', name: '라마' }, { code: 'a', name: '가나다' }, { code: 'c', name: '바사' }];const newArr = [...new Set(arr.map((item) => JSON.stringify(item)))].map((item) => JSON.parse(item))
- node npm시 sill idealTree buildDeps에서 멈추는 현상 npm install ts-jest 실행시 sill idealTree buildDeps ~~~ 에서 진행이 안되는 현상이 발생함 해결방법 (packge-lock.json 을 삭제하고 하라는데 안된다 ㅠㅠ) step 1. npm registry 변경 $ npm config set registry https://registry.npmjs.cf/ step2. 다시 시도 $ npm install ts-jest step3. npm registry 원복 $ npm config set registry https://registry.npmjs.org/ 하니까 해결이 되었다!! 참고사이트 https://www.inflearn.com/questions/779041/solved-nestjs-%ED%94%84%EB%A1%9C..
-
AWS
ec2 pem키로 MacOS ssh 접속하기
* 앞서 ec2 인스턴스 생성시 생성한 키페어로 쉽게 터미널 접속하는 방법 (명령어가 길어서 귀찮으니) $ ssh -i 키페어이름.pem ec2-user@{your ec2 public dns} 1. download 받은 펨키를 ~/.ssh/ 폴더로 이동 $ cd Downloads $ mv demo-ec2.pem ~/.ssh/ 2. config 편집후 저장 (권한도 변경) $ vi ~/.ssh/config $ chmod 600 config $ chmod 600 demo-ec2.pem Host 간편하게 입력할 이름 HostName ec2의 IP 주소 User 사용자 계정 IdentityFile ~/.ssh/"pem 파일 이름".pem 3. 접속 $ ssh ec2_demo 참고링크 : https://velog..
-
AWS
EC2 인스턴스 생성
1. 인스턴스 시작 (서울 리전 확인 필!) 2. OS 이미지 선택 (AWS linux) - 기본 선택 3. 키페어 만들기 - 안전하게 ec2에 접속하기 위해서 키페어를 만들어야한다. 4. 하단 설정은 기본으로 선택하고 인스턴스 시작 5. 인스턴스 생성 확인 및 실행
- Vue [vue] ngrok 을 이용해서 외부에서 로컬로 접속하기 ngrok 에 관한건 아래 글 참고https://ksy93.tistory.com/entry/ngrok-%EC%99%B8%EB%B6%80%EC%97%90%EC%84%9C-%EB%A1%9C%EC%BB%AC%EB%A1%9C-%EC%A0%91%EC%86%8D%ED%95%B4%EC%84%9C-%EA%B0%9C%EB%B0%9C%ED%95%98%EA%B8%B0 [ngrok] 외부에서 로컬로 접속해서 개발하기ngrok이란? 외부(Public)에서 로컬에 접속할 수 있게 도와주는 터널링 프로그램 1. ngrok 설치 brew install --cask ngrok cask 가 없으면 설치(*cask: 간단한 명령어 한줄로 맥용 어플을 설치해주는 유틸리티 프.ksy93.tistory.com 아래 설정 추가module.exp..
-
node
[ngrok] 외부에서 로컬로 접속해서 개발하기
ngrok이란? 외부(Public)에서 로컬에 접속할 수 있게 도와주는 터널링 프로그램 1. ngrok 설치brew install --cask ngrokcask 가 없으면 설치(*cask: 간단한 명령어 한줄로 맥용 어플을 설치해주는 유틸리티 프로그램)- brew install cask 2. ngrok 사용법Ngrok을 이용하여 직접 터널링(로컬 서버 포트에 맞게끔)$ ngrok http 3000 --scheme http,https위와같이 나온다면 터널링 완료되었고 외부에서 접근이 가능함http://3ead-125-141-102-87.ngrok.io 만약 아래 사진처럼 인증을 하라고 뜬다면 Sign Up 페이지에서 google이나 github 계정으로 쉽게 가입할 수 있음 계정이 validate 되었다..
인기글
-
Querydsl 자주쓰는 Querydsl 함수/표현식 정리 Expressions.stringTemplate Expressions.dateTemplate MathExpressions DateTimeExpression BooleanExpression StringExpression CaseBuilder ex) new CaseBuilder().when(~~).then(~~).otherwise(~~).as("test") null 일때 coalesce eq === ne !== like 'abc' contains '%abc%' lt = 사용자함수 (ex. date) Expressions.dateTemplate(Date.class, "function('DATE_SUB_INTERVAL',{0}, {1}, DAY)", "2021-01-01 00:00:00", 1)) MySQL56.. -
node NVM 자주쓰는 명령어 # node 버전 지정해서 설치하기 $ nvm install 10.16.3 $ nvm install 10 // 10.x 의 마지막 버전 # node 최신버전 설치 $ nvm install node $ nvm install --lts // lts 최신버전 # 설치된 node.js 목록 확인하기 $ nvm ls # 설치할 수 있는 모든 node 버전 조회 (너무 많아서 굳이 명령어 때려보기보다 이런게 있구나 정도로만..) $ nvm ls-remote # 특정 버전의 node 사용하기 $ nvm use $ nvm current // 현재 사용중인 버전 확인하기 $ nvm uninstall // 필요없는 node 버전 삭제하기 # 설치되어 있는 가장 최신버전의 node를 디폴트로 사용하기 $ nvm alias .. -
node [ngrok] 외부에서 로컬로 접속해서 개발하기 ngrok이란? 외부(Public)에서 로컬에 접속할 수 있게 도와주는 터널링 프로그램 1. ngrok 설치brew install --cask ngrokcask 가 없으면 설치(*cask: 간단한 명령어 한줄로 맥용 어플을 설치해주는 유틸리티 프로그램)- brew install cask 2. ngrok 사용법Ngrok을 이용하여 직접 터널링(로컬 서버 포트에 맞게끔)$ ngrok http 3000 --scheme http,https위와같이 나온다면 터널링 완료되었고 외부에서 접근이 가능함http://3ead-125-141-102-87.ngrok.io 만약 아래 사진처럼 인증을 하라고 뜬다면 Sign Up 페이지에서 google이나 github 계정으로 쉽게 가입할 수 있음 계정이 validate 되었다..
-
Tool [Agile + Devops] Jira, Bitbucket, Jenkins 요즘 애자일(Agile), 애자일 방법론 , Devops 라고해서 많이 뜬다. 초기 소프트웨어 개발방법은 '계획 -> 설계 -> 빌드 -> 테스트 -> 배포 -> 서포트' 라는 계획 중심에 가까웠다. 하지만 지금은 너무나도 시대가 빠르게 변화하고 있고 유동적이어서 사용자가 많은 시간을 기다려 주지 않는다. 그런 불확실한 미래에 발빠르게 대응하기 위해 전략들이 나오게 되었는데 그중 하나가 애자일이다. 애자일은 사용자 요구에 맞춰 빠른 피드백으로 테스트하고 개발하고 지속적으로 반영하는 방식이다. 사용자는 최소 기능 제품을 일찍 볼 수 있고, 회사는 사용자의 피드백을 통해 다음 제품을 더 훌륭하게 만들 수 있다. 즉, 소통, 협업, 통합 및 자동화를 강조하는 소프트웨어 개발론이고 개발과 운영이 상호의존적으로 ..
-
Java [Mybatis] ResultHandler로 대용량 Excel Download (POI) 대용량의 데이터를 데이터베이스에서 읽어 Excel로 다운로드 할 때 OOM(Out Of Memory)가 자주 발생한다. OOM을 해결하기 위해서 Mybatis를 사용하는 경우에는 ResultHandler를 이용하여 각각의 Result에 대해 Excel의 Row를 생성하면 OOM 발생을 방지할 수 있다. (기존의 DAO를 사용하지 않는 이유는 ResultHandler를 사용해서 데이터베이스에서 행을 패치하면서 바로 엑셀 생성을 처리하기 위해서임) SqlSession session = sqlSessionFactory.openSession(); ResultHandler 를 이용하여 row별로 처리할때는 첫번째로 session을 열어줘야한다. class InnerResultHandler implements Re..