Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/uvera/spring-boot-kotlin-template

My personal template for a Spring Boot REST webapp
https://github.com/uvera/spring-boot-kotlin-template

kotlin liquibase spring-boot-2 spring-mvc swagger-ui

Last synced: 7 days ago
JSON representation

My personal template for a Spring Boot REST webapp

Awesome Lists containing this project

README

        

* My personal spring boot kotlin template
** Features
- Swagger UI with OpenAPI setup
- Spring Security implementation with JWT access and refresh token
- Liquibase integrated with Postgres database
- Spring cache setup
** Project Configuration
- Spring Boot 2.5.5
- Kotlin 1.5.31
- Java 17
** Starters
#+BEGIN_SRC kotlin
implementation("org.springframework.boot:spring-boot-starter-data-jdbc")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-validation")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-undertow")
implementation("org.springframework.boot:spring-boot-starter-cache")

#+END_SRC
** Other dependencies
#+BEGIN_SRC kotlin
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation("org.liquibase:liquibase-core")
implementation("org.jdbi:jdbi3-core")
implementation("org.jdbi:jdbi3-postgres")
implementation("org.jdbi:jdbi3-sqlobject")
implementation("org.jdbi:jdbi3-kotlin")
implementation("org.jdbi:jdbi3-kotlin-sqlobject")
implementation("org.jdbi:jdbi3-stringtemplate4")
developmentOnly("org.springframework.boot:spring-boot-devtools")
runtimeOnly("org.postgresql:postgresql")
annotationProcessor("org.springframework.boot:spring-boot-configuration-processor")
testImplementation("org.springframework.boot:spring-boot-starter-test")
testImplementation("org.springframework.security:spring-security-test")
// region jwt
implementation("io.jsonwebtoken:jjwt-api")
runtimeOnly("io.jsonwebtoken:jjwt-impl")
runtimeOnly("io.jsonwebtoken:jjwt-jackson")
// endregion jwt
// spring doc
implementation("org.springdoc:springdoc-openapi-ui")
implementation("org.springdoc:springdoc-openapi-data-rest")
implementation("org.springdoc:springdoc-openapi-kotlin")

#+END_SRC