![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/LMlQL/btrWu5rTtcf/IAHyl9VmnpgYGDKYLYB6y1/img.png)
내부 프로젝트로 Testcase를 자동으로 정리해주는 프로젝트를 진행하게 됐다. 백엔드에서 서비스로직만 처리할 게 아니라, 화면을 추가로 그려야했기 때문에 자연스럽게 자바스크립트를 보게 됐고... 너무 많은 이슈들을 마주쳤다.(별로 언급하고 싶지 않은 이유로 발생한 것들이다...) 그 중 하나가 Object의 깊은 복사(Deep Copy) / 얕은 복사(Shallow Copy) 이슈였고, 이거 때문에 몇 시간을 끌었다. 어떤 문제 였나? 결론부터 이야기하자면, 나는 깊은 복사가 하고 싶었다. 그런데 배열 안의 오브젝트의 처리에 문제가 있었다. Java에서의 배열(Array) 모두 같은 자료형만을 취급한다. 하지만 Javascript의 Array는 제한 없이 사용할 수 있다. a = [ 'abc', { a..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/IWrQC/btrVAaAOYAl/elFYbulmLSgvbq8BXkMss0/img.png)
1. logrotate란? 서버를 운영하다 보면 의도치 않은 서버의 상태 변경이나 장애가 발생한다. 이에 대비하기 위해 가능하면 서비스의 모든 로그(LOG)를 남기도록 설정한다. 하지만 서버에는 저장해야할 다양한 로그들이 있으며, 별도의 설정을 하지 않으면 시간이 지나면 이 로그들이저장공간 대부분을 차지하게 된다. 서버의 용량을 모두 잡아먹을 정도로 커지기 전에 로그들을 잘 관리하도록 설정하는 기능이 logrotate다. 2. 설치 및 실행 순서 기본적으로 Linux에 설치되어 있다곤 하는데 apt로도 설치가 가능하다. apt install logrotate cron.daily 아래의 /etc/cron.daily/logrotate logrotate 설정을 등록해놓고 매일 실행시켜 사용한다. 설치하면 자동..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cNAPMv/btrU8FsyoSn/1wh5NKxBi208BMivdOTGaK/img.png)
1. Array 에서 ArrayList 변환 1.1. Stream 이용 String[] arr = new String [] {"1", "A", "a", "b"}; List list = Arrays.stream(arr).collect(Collectors.toList()); System.out.println(list.getClass().getName()); 결과화면 : 1.2. Lists 클래스 이용 String[] arr = new String [] {"1", "A", "a", "b"}; List list = Arrays.asList(arr); list.forEach(System.out::println); 결과화면 : 2. ArrayList 에서 Array 변환 2.1. toArray() 이용 String..
- Total
- Today
- Yesterday
- AWS
- 람다
- serverless
- ChatGPT
- EKS
- chat GPT
- Kotlin
- jenkins
- lambda
- AWS EC2
- docker
- MySQL
- java
- Spring
- elasticsearch
- Log
- JWT
- GIT
- OpenAI
- Elastic cloud
- springboot
- CloudFront
- S3
- 스프링부트
- openAI API
- awskrug
- cache
- AOP
- terraform
- 코딩테스트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |