전개구문은 배열처럼 여러 요소가 하나로 관리될때 이를 풀어서 요소들로 나열할떄 사용됩니다. Javascript(Typescript) const arr1 = [0,1,2] const arr2 = [...arr1, 3] const arr3 = [...arr2, 1] console.log(arr3) // 결과 // (5) [0, 1, 2, 3, 1] Kotlin val arr1 = arrayOf(0,1,2) val arr2 = arrayOf(*arr1, 3) val arr3 = arrayOf(*arr2, 1) println(arr3.joinToString()) // 결과 // 0, 1, 2, 3, 1 결론 자바스크립트에 비하면 배열 타입만 사용 가능하기 때문에 리스트 같은 경우 TypedArray로 변환해서 ..
Intellij ideavim 플러그인 사용 시 다음의 파일을 홈 경로에 넣어준다. (윈도우의 경우 C:\Users\donnert\.ideavimrc) 인텔리제이의 경우 액션(:action)을 지원해서 그냥 가져다가 키랑 매핑해서 쓰기만 하면 된다 (https://gist.github.com/zchee/9c78f91cc5ad771c1f5d) 주요기능 세미콜론도 콜론으로 jj : 입력모드 탈출 H : 줄 제일 앞 L : 줄 제일 뒤 컨트롤+H : 뒤로가기 컨트롤+L : 앞으로 가기 gfu : 클래스/메소드 사용하는부분 찾기 gd: 변수 선언으로 이동 gb: 변수 타입 선언으로 이용 grn : 이름 변경(변수 클래스 등) gw : 단어 선택 .ideavimrc " 기본설정 set ignorecase set ..
히카리 풀을 사용하게 되면 housekeeper란 놈이 기본으로 30초마다 풀 상태를 debug모드로 찍고있는데 커스터마이징이 잘 안되서 별도로 찍기로 함 @SpringBootApplication @EnableScheduling class ApiApplication( val dataSource: DataSource) { @Scheduled(fixedDelay = 10000) fun hikariPoolMonitor() { (DirectFieldAccessor(dataSource).getPropertyValue("pool") as HikariPool?)?.let { hikariPool -> logger().info("Pool stats (total=${hikariPool.totalConnections}, a..
다음과 같이 여러개의 작업을 동시에 처리할때 작업1,2가 메인작업과 별개의 작업일때 비동기(@Async)로 던져놓고 메인 작업만 완료 후 응답을 주기도 합니다. (응답시간 0.5초, 작업1,2의 결과 받을 수 없음) 메인작업 : 0.5초 작업1 : 1초 작업2 : 2초 하지만 3가지 작업의 결과가 모두 필요할 경우 동기 처리를 하면 3.5초가 걸리지만 작업1, 2를 비동기로 처리하면 일찍 처리가 끝난 작업은 모든 작업이 완료될때까지 대기 후 응답을 줍니다. (응답시간 2초, 3개의 작업 결과 확인 가능) Kotlin @RestController @EnableAsync class ThreadTest( val taskService: TaskService, val mainService: MainService ..
윈도우에서 도커를 사용하다보면 사용하지 않는 이미지가 쌓여서 용량이 무한증식하는 사태가 벌어집니다 범인 : "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\MobyLinuxVM.vhdx" 미사용 이미지 삭제 > docker images REPOSITORY TAG IMAGE ID CREATED SIZE ddanzit-api_api latest 1287e2e8862d 13 days ago 971MB 310c3191c7df 4 weeks ago 971MB 19dc6cd2a496 7 weeks ago 971MB shippang-api_shippang_server latest 662739236085 3 months ago 1.53GB nginx_nginx lates..
코틀린에서 숫자 변환시에 자주 쓰이는 함수입니다. 다른 용도로 숫자인지 아닌지를 판단할때도 자주 쓰는데 주의할 점이 있습니다 fun main(args:Array) { "1234".run { println(this.toIntOrNull() ?: "$this is not number") } "349505749735".run { println(this.toIntOrNull() ?: "$this is not number") println(this.toBigIntegerOrNull() ?: "$this is not number") } } //1234 //349505749735 is not number //349505749735 위 예제를 보시면 문자열이 숫자인지 아닌지 판단하기 위해 toIntOrNull을 사용하..
- Total
- 217,667
- Today
- 1
- Yesterday
- 32
- Linux
- docker
- vi
- jQuery
- Access
- Tomcat
- IntelliJ
- 코틀린
- grant
- Kotlin
- properties
- ls
- boot
- vim
- oracle
- 합정
- 도커
- vrapper
- Shell
- Profile
- 톰캣
- mybatis
- Eclipse
- Spring
- maven
- java
- 맛집
- Build
- Database
- 자바