kotlin의 data class는 constructor, getter, setter를 기본적으로 생성해준다. 이 때 기본으로 생성되는 constructor는 data class에 정의된 모든 field를 주입받는 형태다. 기본 생성자 외의 다른 스펙의 생성자를 사용하는 방법은 이와 같다. val student = Student("제인") data class Student( var name: String, val telephone: String?, val address: String?, val memo: String? ) { constructor(name: String) : this(name, null, null, "생성자를 통해 생성") }
자바에서는 여러 클래스에서 사용해야하는 중복된 코드를 Utils 클래스로 빼서 사용하기도 하는데 코틀린에서도 Utils 클래스로 분리가 필요한 메소드 사용이 필요해졌다. 코틀린에서는, 이런 클래스를 따로 빼지 않고도 Util 역할을 하는 메소드 사용이 가능하다. 그걸 바로 확장 함수라 칭한다. 대신에 확장 함수는 최상위 수준의 클래스에 위치하기만 하면 된다. 그 확장 함수는 그 파일의 맨 앞에 정의된 패키지의 멤버 함수므로, 다른 패키지에서 사용할 시에는 그 확장 함수가 정의된 패키지를 임포트해서 사용할 수 있다. 사용법은 간단하다. fun 확장할 클래스.함수명: 리턴할 타입 { return 리턴 값 } 예를 들어, String 클래스를 확장하여 String 앞에 hashtag 처럼 '#'을 붙이고 싶으..
build.gradle 파일에 의존성을 넣어준다. dependencyManagement { imports { mavenBom("org.springframework.cloud:spring-cloud-dependencies:Hoxton.SR9") } } dependencies { implementation("org.springframework.cloud:spring-cloud-starter-openfeign") implementation("io.github.openfeign:feign-httpclient:11.0") } Applicaton.kt 에 @EnableFeignClients 어노테이션을 이용해 Feign 클라이언트 사용을 선언해준다. import org.springframework.boot.auto..