Compare commits

..

No commits in common. "abb35e94c0ef813084fc16a1caf1fefbec12c87e" and "d404e84a4f5c9360ca1088f3a71920a08dd715b9" have entirely different histories.

11 changed files with 38 additions and 54 deletions

2
.gitignore vendored
View File

@ -37,5 +37,3 @@ out/
.vscode/
.DS_Store
uploads/

View File

@ -9,9 +9,9 @@
### Language and Framework
- Spring Boot: 3.0.0
- Kotlin: 1.7.22
- Gradle: 7.5.1
- Spring Boot: 2.7.4
- Kotlin: 1.7.20
- Gradle: 7.5
# Modules

View File

@ -8,8 +8,8 @@ plugins {
kotlin("plugin.jpa")
}
val kotlinVersion = "1.7.22"
val springBootVersion = "3.0.0"
val kotlinVersion = "1.7.20"
val springBootVersion = "2.7.4"
// find the last commit
fun getGitHashLastCommit(): String {
@ -25,9 +25,9 @@ fun getGitHashLastCommit(): String {
springBoot {
buildInfo {
properties {
this.additional.put("commitId", getGitHashLastCommit())
this.additional.put("springBootVersion", springBootVersion)
this.additional.put("kotlinVersion", kotlinVersion)
additional["commitId"] = getGitHashLastCommit()
additional["springBootVersion"] = springBootVersion
additional["kotlinVersion"] = kotlinVersion
}
}
}
@ -36,10 +36,9 @@ dependencies {
// Spring Data JPA (Required for Database Layer)
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-data-redis")
implementation("org.springframework.boot:spring-boot-starter-validation")
// Migrating from SpringDoc API (Swagger) for Support Spring Boot 3.x
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.0")
// Migrating from SpringFox
implementation("org.springdoc:springdoc-openapi-ui:1.6.11")
// SPRING FRAMEWORK AND CORE
implementation("org.springframework.boot:spring-boot-starter-web")

View File

@ -6,12 +6,12 @@ import io.swagger.v3.oas.annotations.security.SecurityScheme
import io.swagger.v3.oas.models.OpenAPI
import io.swagger.v3.oas.models.info.Info
import io.swagger.v3.oas.models.info.License
import org.springdoc.core.GroupedOpenApi
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import io.swagger.v3.oas.annotations.OpenAPIDefinition
import io.swagger.v3.oas.annotations.servers.Server
import org.springdoc.core.models.GroupedOpenApi
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
//import org.springdoc.core.SpringDocUtils

View File

@ -10,6 +10,6 @@ import org.springframework.web.servlet.view.RedirectView
class ApiDoc {
@GetMapping(value = [ "/api-doc", "/api-docs"])
fun redirect(): RedirectView {
return RedirectView("/swagger-ui/index.html")
return RedirectView("/swagger-ui/")
}
}

View File

@ -14,7 +14,7 @@ import org.springframework.util.FileCopyUtils
import org.springframework.web.bind.annotation.*
import org.springframework.web.multipart.MultipartFile
import java.util.*
import jakarta.servlet.http.HttpServletResponse
import javax.servlet.http.HttpServletResponse
@UploaderModule
@Tag(name = "Uploader Controller")

View File

@ -12,47 +12,40 @@ import java.io.InputStream
import java.io.Serializable
import java.nio.file.Files
import java.util.*
import jakarta.persistence.*
import org.hibernate.annotations.GenericGenerator
import javax.persistence.*
@UploaderModule
@Entity
@Table(name = "`uploader`")
@Table(name = "uploader")
@EntityListeners(AuditingEntityListener::class)
open class UploaderEntity(
@Id
@GeneratedValue(generator = "custom-uuid")
@GenericGenerator(
name = "custom-uuid",
strategy = "org.hibernate.id.UUIDGenerator",
parameters = [org.hibernate.annotations.Parameter(name = "uuid_gen_strategy_class", value = "org.hibernate.id.uuid.CustomVersionOneStrategy")]
)
@Column(columnDefinition = "BINARY(16)")
@GeneratedValue(strategy = GenerationType.AUTO)
open var id: UUID? = null,
@Column(name = "`filename`")
@Column(name = "filename")
open var filename: String? = null,
@Column(name = "`content_type`")
@Column(name = "content_type")
open var contentType: String? = null,
@Column(name = "`content_length`")
@Column(name = "content_length")
open var contentLength: Long? = null,
@Column(name = "`path`", length = 300)
@Column(name = "path", length = 300)
open var path: String? = null,
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "`created_at`")
@Column(name = "created_at")
@CreatedDate
open var createdAt: Date? = null,
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "`updated_at`")
@Column(name = "updated_at")
@LastModifiedDate
open var updatedAt: Date? = null,
@Column(length = 30, name = "`provider_type`")
@Column(length = 30)
open var providerType: String? = null,
) : Serializable {
@Transient

View File

@ -3,27 +3,20 @@ package com.cubetiqs.web.modules.user
import org.hibernate.Hibernate
import java.io.Serializable
import java.util.*
import jakarta.persistence.*
import org.hibernate.annotations.GenericGenerator
import javax.persistence.*
@UserModule
@Entity
@Table(name = "`user`")
@Table(name = "user")
open class UserEntity(
@Id
@GeneratedValue(generator = "custom-uuid")
@GenericGenerator(
name = "custom-uuid",
strategy = "org.hibernate.id.UUIDGenerator",
parameters = [org.hibernate.annotations.Parameter(name = "uuid_gen_strategy_class", value = "org.hibernate.id.uuid.CustomVersionOneStrategy")]
)
@Column(columnDefinition = "BINARY(16)")
@GeneratedValue(strategy = GenerationType.AUTO)
open var id: UUID? = null,
@Column(name = "`name`", length = 50)
@Column(name = "name", length = 50)
open var name: String? = null,
@Column(name = "`username`", length = 50, unique = true)
@Column(name = "username", length = 50, unique = true)
open var username: String? = null,
) : Serializable {
override fun equals(other: Any?): Boolean {

View File

@ -27,9 +27,8 @@ spring:
password: ${DATASOURCE_PASSWORD:password}
jpa:
hibernate:
ddl-auto: ${JPA_HIBERNATE_DDL_AUTO:create-drop}
ddl-auto: ${JPA_HIBERNATE_DDL_AUTO:update}
open-in-view: ${JPA_OPEN_IN_VIEW:false}
database-platform: ${JPA_DATABASE_PLATFORM:org.hibernate.dialect.H2Dialect}
data:
redis:
repositories:
@ -56,3 +55,5 @@ logging:
springdoc:
api-docs:
enabled: ${API_DOCS_ENABLED:true}
swagger-ui:
path: /swagger-ui

View File

@ -1,11 +1,11 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("org.springframework.boot") version "3.0.0" apply false
id("io.spring.dependency-management") version "1.1.0" apply false
kotlin("jvm") version "1.7.22" apply false
kotlin("plugin.spring") version "1.7.22" apply false
kotlin("plugin.jpa") version "1.7.22" apply false
id("org.springframework.boot") version "2.7.4" apply false
id("io.spring.dependency-management") version "1.0.14.RELEASE" apply false
kotlin("jvm") version "1.7.20" apply false
kotlin("plugin.spring") version "1.7.20" apply false
kotlin("plugin.jpa") version "1.7.20" apply false
}
allprojects {

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists