본문 바로가기 메뉴 바로가기

donnert.net

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

donnert.net

검색하기 폼
  • 분류 전체보기 (85)
    • 개발 (79)
      • Java, Kotlin (32)
      • Linux, Server (22)
      • JavaScript, TypeScript (6)
      • DB (7)
      • nodejs (1)
    • 맛집 (5)
    • iPhone (0)
    • 일기장 (0)
  • 방명록

전체 글 (85)
Pair, Triple

함수에서 응답을 받을떄 애매하게 값을 여러개 리턴해야 하는 경우가 있는데 이럴떄 귀찮아서 Pair, Triple을 종종 사용하는 편입니다. 보통 1번 사용 예제처럼 Pair.first를 사용하는 경우가 많은데 2번처럼 바로 변수에 바인딩 해서 사용할 경우 코드도 간단해지고 아래쪽에서 first가 뭐였더라 같은 삽질을 할 필요가 없습니다. fun main() { // 1 val widthHeight = getWidthHeight() println("Width: ${widthHeight.first}, Height: ${widthHeight.second}") // 2 // val xyz = getXYZ() // val x = xyz.first // val y = xyz.second // val z = xyz...

개발/Java, Kotlin 2023. 3. 9. 15:24
RestTemplate 사용 중 Connection refused: connect 오류 발생

평소처럼 restTemplate를 사용하다가 이상하게 연동이 안되는 상황 발생 (서버는 npm의 json-server 사용) fun getTest() { val body = restTemplate.getForEntity("$host/test", String::class.java).body logger.info {"body : $body"} } o.s.web.client.RestTemplate : HTTP GET http://localhost:3020/test o.s.web.client.RestTemplate : Accept=[text/plain, application/json, application/*+json, */*] o.s.s.s.TaskUtils$LoggingErrorHandler : Unexpe..

개발/Java, Kotlin 2023. 2. 21. 11:06
Spread operator(전개구문) in kotlin

전개구문은 배열처럼 여러 요소가 하나로 관리될때 이를 풀어서 요소들로 나열할떄 사용됩니다. 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로 변환해서 ..

개발/Java, Kotlin 2022. 12. 6. 22:51
리눅스 콘솔 파일로 출력

# 파일에 기록 ./test.sh > log.txt # 파일에 기록(Append) ./test.sh >> log.txt # 파일에 기록(stderr 포함) ./test.sh >&1 | tee log.txt # 파일에 기록(stderr 포함+콘솔 출력) ./test.sh 2>&1 | tee log.txt # 응용(시간 추가) DATE=$(date '+%Y%m%d%H%M%S') ./test.sh 2>&1 | tee log_$DATE.txt

개발/Linux, Server 2022. 10. 4. 13:29
ideavimrc

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 ..

카테고리 없음 2020. 4. 29. 10:01
히카리 풀 모니터링

히카리 풀을 사용하게 되면 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..

개발/Java, Kotlin 2020. 4. 28. 11:22
도커 빌드 속도가 느릴 경우

Dockerfile을 소스와 같이 관리하기 위해 프로젝트 최상단에 위치 시킴 gradle build 후 docker build 수행하니 시간이 엄청 길어지면서 용량도 커지는 현상 발생 원인은 도커 빌드시 Dockerfile 하위 파일을 다 이미지에 넣어버리는 것으로 확인 .dockerignore파일을 프로젝트 최상단에 위치시켜서 예외 항목 등록 후 정상 동작 확인 .dockerignore ** !/target/*.jar

개발/Linux, Server 2020. 2. 17. 15:30
동기(Synchronous)/비동기(Asynchronous) 처리

다음과 같이 여러개의 작업을 동시에 처리할때 작업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 ..

개발/Java, Kotlin 2019. 11. 27. 14:48
RestTemplate 한글 깨짐

FCM 연동 중 한글 깨짐 현상 발생 시 다음과 같이 메세지 컨버터의 인코딩을 변경한다. Kotlin val restTemplate = RestTemplate().apply { messageConverters.forEach { if(it is StringHttpMessageConverter) { it.defaultCharset = Charset.forName("UTF-8") } } }

개발/Java, Kotlin 2019. 11. 19. 15:33
윈도우10에서 도커 용량 줄이기

윈도우에서 도커를 사용하다보면 사용하지 않는 이미지가 쌓여서 용량이 무한증식하는 사태가 벌어집니다 범인 : "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..

개발/Linux, Server 2019. 10. 15. 09:27
이전 1 2 3 4 ··· 9 다음
이전 다음
공지사항
최근에 올라온 글
  • Pair, Triple
  • RestTemplate 사용 중 Connectio⋯
  • Spread operator(전개구문) in ko⋯
  • 리눅스 콘솔 파일로 출력
최근에 달린 댓글
  • 우와~ 덕분에 해결 했어요! 감사합니다!
  • 이거 실제로 되는거 맞나요? 다른곳에는 다먹는데 로그⋯
  • 본문도 잘 보고 행인님 댓글도 잘봤습니다. 덕분에 배워⋯
  • 국수 사리는 만두는 제외한 메뉴를 인원수대로 시킬 시 ⋯
Total
219,716
Today
0
Yesterday
8
링크
  • 딴짓-커뮤니티 인기 글 모음
  • 쉽팡-직구 배송 조회(관세청/알리)
  • 웹 시퀀스 다이어그램
TAG
  • IntelliJ
  • properties
  • grant
  • resttemplate
  • Eclipse
  • 합정
  • ls
  • Access
  • vrapper
  • boot
  • Tomcat
  • maven
  • 맛집
  • 도커
  • Build
  • vim
  • vi
  • oracle
  • Kotlin
  • 톰캣
  • jQuery
  • Linux
  • Database
  • Spring
  • java
  • Shell
  • mybatis
  • Profile
  • docker
  • 코틀린
more
«   2023/03   »
일 월 화 수 목 금 토
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
글 보관함
  • 2023/03 (1)
  • 2023/02 (1)
  • 2022/12 (1)
  • 2022/10 (1)
  • 2020/04 (2)

Blog is powered by Tistory / Designed by Tistory

티스토리툴바