컴퓨터/Spring Boot
-
Spring Boot: Repository Extension 패턴 (CustomRepositoryImpl)컴퓨터/Spring Boot 2024. 5. 8. 15:12
소개프로젝트들을 보다 보면 가끔 RepositoryImpl과 같은 파일을 본 적이 있다.그냥 Repository를 다르게 구현한 것일까 하고 넘어갔다가 개발을 하다가 위 방식으로 해결했다. 문제MySQL 에서 spatial 타입을 사용 중이다.POINT 타입으로 저장되어 있기 때문에 클라이언트 JSON에서는latitude/longitude (경/위도)로 float64 (double) 타입으로 반환하고 싶었다.@Entity@Table(name = "Markers")public class Marker { @Id @Column(name = "MarkerID") private Integer markerID; @Column(columnDefinition = "geometry(Point, 43..
-
Spring boot + Kotlin Coroutine + WebFlux + Security 5 + MySQL 기본 셋업컴퓨터/Spring Boot 2024. 3. 18. 21:31
Spring boot 2.7에서 kotlin coroutine을 써서 webflux를 사용할 것이다. (JDK 17) 시큐리티는 기본 셋업에 R2DBC MySQL을 써서 연결했다. gradle-kts 버전이다. MySQL 테이블 Geolocation Spatial 타입을 갖고 있는 간단한 table이다. CREATE TABLE Markers ( MarkerID INT AUTO_INCREMENT PRIMARY KEY, UserID INT NULL, Location POINT NOT NULL SRID 4326, -- SRID Description VARCHAR(255), CreatedAt TIMESTAMP DEFAULT CURRENT_TIMESTAMP, UpdatedAt TIMESTAMP DEFAULT CU..
-
Spring Boot: Kotlin + Cassandra 에서 @CreatedDate null 해결컴퓨터/Spring Boot 2023. 12. 16. 17:40
코틀린 스프링 부트에서 Apache Cassandra/Scylla 데이터 베이스를 사용할 때 Auditing을 해도 @CreatedDate 어노테이션이 작동을 안 해서 null이다. @LastModifiedDate는 근데 작동을 잘한다. Main.kt @EnableScheduling @SpringBootApplication @EnableCassandraAuditing class KotlinTestApplication { // @PostConstruct // fun setTimeZone() { // TimeZone.setDefault(TimeZone.getTimeZone("Asia/Seoul")) // } companion object { @JvmStatic fun main(args: Array) { Se..
-
Spring Boot: Kotlin + ScyllaDB 도커 시작컴퓨터/Spring Boot 2023. 12. 14. 21:34
Datastax 드라이버로 Configuration을 만들고 간단한 도메인을 만들어서 저장하는 과정을 썼다. 풀소스는 아래 github에서 참고. GitHub - Alfex4936/spring-boot-kotlin-scylladb-demo: Spring Boot written in Kotlin with two scyllaDB nodes in Docker Spring Boot written in Kotlin with two scyllaDB nodes in Docker - GitHub - Alfex4936/spring-boot-kotlin-scylladb-demo: Spring Boot written in Kotlin with two scyllaDB nodes in Docker github.com DataS..