json이란,, ㅠㅠ json 형태로 외부 api와 데이터를 주고 받아야하는데 주고 받는 데이터 중에 enum으로 관리하고 싶은게 있었다 enum으로 관리를 하는데 외부에서 String로 데이터를 넘겨주면 deserialization할 때 enum으로 바꾸고 외부로 api를 날릴 때 enum을 String으로 넘기게 하고 싶었다!! 코틀린 어렵다 어려워!!!!!!!!!!!!! enum class HTTPStatusCode { OK, NOT_FOUND, INTERNAL_SERVER_ERROR } data class Response( val status: HTTPStatusCode ) 이렇게 생긴 enum class와 data class가 있다고 하자 "{"status":"200"}"이라는 json 문자열을..
테스트 코드를 돌려야 하는데 proxy 서버를 지정해줘야 해서 자동으로 만들어지는 gradle 설정에 vm option을 추가해줬지만,, 도통 들어먹지를 않는거 같아서 JUnit 설정을 추가해서 진행하였다 (진짜 화남) 일단 오른쪽 위에 Edit Configurations... 메뉴 클릭! JUnit configuration 추가!! 이름은 적당히~~ 지어주고 [module not specified]를 클릭해서 jdk 버전을 지정해준다 자기가 프로젝트에 설정한 버전으로~~ gradle이나 maven 파일에 지정했다면 그걸로~~ 모듈은 test 붙은걸로 선택했다 (-cp 라 적힌거에서 선택) 그리고 테스트할 클래스를 지정하고 vm option을 넣어주면 끝!! 클래스로 선택하면 클래스 내의 테스트 함수가 ..
[Java의 정석 - http://www.yes24.com/Product/Goods/24259565] 1. 람다식(Lambda expression) 1.1 람다식이란? 람다식(Lambda expression) 메서드를 하나의 '식(expression)'으로 표현한 것 함수를 간략하면서도 명확한 식으로 표현할 수 있게 해줌 익명함수(anonymous function)이라고도 함 메스드의 매개변수로 전달되어지는 것이 가능하고 메서드의 결과로 반환될 수도 있음 1.2 람다식 작성하기 메서드에서 이름과 반환타입을 제거하고 매개변수 선언부와 몸통{} 사이에 '->'를 추가한다 반환타입 메서드이름 (매개변수 선언) { 문장들 } ⬇︎ 반환타입 메서드이름 (매개변수 선언) -> { 문장들 } return 문 대신 '..
http://localhost:8080/test?param=1,2,3 > 이런 식으로 parameter를 list로 받고 입력 안 받는 것도 가능하게 싶었다 역시 시작은 나의 스승 구글에서 찾아보았고 결론적으로 말하면 @GetMapping("/test") public String multiParam(@RequestParam(value="param", required=false, defaultValue="") List params) { ... } 이런식으로 해결했다 @RequestParam에서 value는 뭐 optional한거고 required=false는 입력하지 않는 옵션을 위해 넣었고 defaultValue=""는 저게 없으면 입력할 parameter가 없을 때 http://localhost:808..
[시작하세요! 도커/쿠버네티스 - www.yes24.com/Product/Goods/93765519] 쿠버네티스(Kubernetes) 컨테이너 오케스트레이션 도구 여러 대의 도커 호스트를 하나의 클러스터로 만들어줌 장점 서버 자원 클러스터링, 마이크로서비스 구조의 컨테이너 배포, 서비스 장애 복구 등 컨테이너 ㄱ ㅣ반의 서비스 운영에 필요한 대부분의 오케스트레이션 기능을 폭넓게 지원 구글, 레드햇을 비롯한 많은 오픈소스 진영에서 쿠버네티스의 소스코드에 기여하고 있기 때문에 성능과 안정성 면에서 신뢰 받고 있음 영속적 볼륨(Persistence Volume), 스케줄링, 장애 복구, 오토 스케일링, 서비스 디스커버리 및 인그레스(Ingress) 등 컨테이너 기반의 클라우드를 운영할 때 필요한 대부분의 기능..
[배워서 바로 쓰는 스프링 프레임워크 - www.yes24.com/Product/Goods/90051375] 6.1 소개 6.2 @Component - 스프링 빈 식별하기 @Component 타입 수준의 애너테이션 이다 클래스가 스프링 빈을 표현한다는 사실을 나타냄 애플리케이션에서는 컨트롤러, 서비스 . 데이터 접근 객체(DAO)에 따라 특별한 @Component를 사용하도록 권장한다 @Controller, @Service, @Repository 애너테이션은 @Component로 메타 애너테이션되어 있음 @Component, @Controller, @Service, @Repository 은 스프링 컨테이너에 빈을 어떤 이름으로 등록할지 지정하는 value 속성을 받는다 엘리먼트의 id 속성과 같은 역할 ..
[네트워크 개론 - http://www.yes24.com/Product/Goods/76073424] 1. 네트워크의 이해 1.1 네트워크의 개념 네트워크의 사전적 의미 모뎀이나 LAN, 케이블, 무선 매체 등 통신 설비를 갖춘 컴퓨터로 서로 연결하는 조직이나 체계, 통신망 -> 통신 설비로 두 대 이상의 컴퓨터를 서로 연결하는 것 네트워크의 장점 데이터 공유 서버 : 모든 사용자가 공유할 수 있는 자원을 제공 파일 서버 : 사용자가 접근할 수 있도록 파일을 저장한 서버 특정 권한이 있는 사용자만 데이터를 읽고 수정할 수 있어야 한다 읽기 전용 : 공유 장치에 저장된 데이터를 읽기만 할 수 있다 사용자는 데이터를 읽을 수만 있고 수저앟ㄹ 수는 없기 때문에 데이터가 변경되지는 않는다 읽기/쓰기 : 공유 장치..
[도메인 주도 설계 핵심 - http://www.yes24.com/Product/Goods/48577718] DDD는 주로 명확하게 바운디드 컨텍스트 내에서 보편언어를 모델링하는 것에 대한 것이다 바운디드 컨텍스트는 의미적으로 동일한 컨텍스트의 범위를 표현 소프트웨어 모델의 각 컴포넌트는 특정한 의미를 갖고 특정한 일을 수행한다 바운디드 컨텍스트 내에 존재하는 컴포넌트들은 컨텍스트에 특화돼 있으며, 컨텍스트 안에서 의미가 살아난다 모델링 작업을 시작하는 시점에서 바운디드 컨텍스트는 개념적인 수준이라 문제 영역의 일부라고 생각할 수도 있지만 모델이 더 깊은 의미와 명확성을 받아들이게 되면서 빠르게 해결 영역으로 전환된다 문제 영역(problem space) : 상위 수준의 전략적 분석을 수행하고 주어진 프..
[시작하세요! 도커/쿠버네티스 - www.yes24.com/Product/Goods/93765519] FROM ubuntu:14/04 MAINTAINER alicek106 LABEL "purpose"="practice" RUN apt-get update RUN apt-get install apache2 -y ADD test.html /var/www/html WORKDIR /var/www/html RUN ["/bin/bash", "-c", "echo hello >> test2.html"] EXPOSE 80 CMD apachectl -DFOREGROUND FROM : 생성할 이미지의 베이스가 될 이미지 Dockerfile 작성 시에 반드시 한 번 이상 입력해야 됨 MAINTAINER : 이미지를 생성한 개발..
[시작하세요! 도커/쿠버네티스 - www.yes24.com/Product/Goods/93765519] # docker run # docker pull [이미지 이름]:[태그] # docker images # docker create [이미지 이름]:[태그] # docker inspect [정보를 확인하고 싶은 것] # docker container inspect [컨테이너 이름/컨테이너 ID] # docker start [컨테이너 이름/컨테이너 ID] # docker attach [컨테이너 이름/컨테이너 ID] # docker ps # docker rename [컨테이너 이름] [새로운 이름] # docker rm [컨테이너 이름/컨테이너 ID] # docker stop [컨테이너 이름/컨테이너 ID] ..
- Total
- Today
- Yesterday
- JavaScript
- k8s
- ImagePullBackOff
- IntelliJ
- kotlin In Action
- cacheable
- Kubernetes
- ddd
- back merge
- 코틀린
- 자바
- 쿠버네티스
- gasmask
- 클린코드
- Spring
- 자바스크립트
- 도커
- docker for mac
- 스프링
- 도메인주도설계
- java
- docker pull limit
- QuickTimePlayer
- docker
- clean code
- kotlin
- gradle
- springboot
- linuxkit
- 스프링부트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |