메소드 호출시 내부 동작 과정에서 private extension function을 사용하는 MyClass라는 이름의 클래스가 있다고 하자. 해당 클래스는 인자로 전달 받은 값에 3을 더한 후 문자열로 변환한 값을 반환하는 하나의 메소드만을 공개하고 있으며, 이러한 기능을 Kotest로 테스트한다면 다음과 같다.class PlaygroundTest : StringSpec({ "convertToStringAfterAdd3 should return string of value after add 3" { // given val input = 5 val myClass = MyClass() // when val result = myClass.co..
Hibernate의 엔티티의 기본 생성자를 활용하는 반면, Kotlin은 별도로 기본 생성자를 만들지 않기 때문이라고 한다. 이러한 불편함은 Kotlin 측에서 누구보다 잘 알것이기에 아래와 같은 플러그인을 제공한다. plugins { id("org.springframework.boot") version "3.2.3" id("io.spring.dependency-management") version "1.1.4" kotlin("jvm") version "1.9.22" kotlin("plugin.spring") version "1.9.22" kotlin("plugin.jpa") version "1.9.22" // 요 친구임! } 참고 JPA error in kotlin : Class 'Student' sh..
Scope Function이란? 코틀린의 stlib은 let과 run, with, apply, also라는 다섯 개의 scope function을 제공한다. 이러한 함수들은 모두 1. 주어진 객체와 함께 2. 블록의 코드를 실행하여 3. 결과를 반환한다는 공통점을 갖는다. scope function은 모두 코드를 간결하게 하고 가독성을 향상시키는 데에 의의가 있다. function obj ref returns let it lambda result run(Any.run 형태로 실행) this lambda result run(수신 객체 없이 실행) - lambda result with this lambda result apply this ctx obj also it ctx obj 선택 기준 상술한 Scope..
@ActiveProfiles("local") @AutoConfigureWebTestClient @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) class CreateTaskHashTest: BehaviorSpec() { @Autowired private lateinit var client: WebTestClient init { // ...테스트 코드 작성 } } 요렇게 작성했는데도 NoSuchBeanDefinitionException이 뜨는 경우, 아래와 같은 dependency를 추가하자. // build.gradle.kts dependencies { // ...생략 implementation("org.springf..
CloudFront Signed URL을 만드는 과정에서, 문자열로 된 RSA Key를 아래와 같은 코드를 통해 java.security.PrivateKey 인스턴스로 변환하고자 했다. internal fun String.convertToPrivateKey(): PrivateKey { val keyData = this.replace("-----BEGIN RSA PRIVATE KEY-----\n", "") .replace("-----END RSA PRIVATE KEY-----", "") .replace("\n", "") val keyBytes = Base64.getDecoder().decode(keyData) val keySpec = PKCS8EncodedKeySpec(keyBytes) return Key..
- Total
- Today
- Yesterday
- shell
- postgresql
- RancherDesktop
- 코딩테스트
- Gradle
- react
- Node.js
- Vault
- pgloader
- Spring Cloud Config
- terraform
- IntelliJ
- Database
- spring boot
- kotlin
- JEST
- Git
- AWS
- Java
- eureka
- JPA
- Linux
- Docker
- etc
- Puppeteer
- AWS IoT
- jQuery
- mysql
- javascript
- hashicorp
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |