From 230ceea0fae4062817115b2bb9738a6f91345d32 Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 18 Apr 2023 09:58:52 +0800 Subject: [PATCH] update latest gradle & spring; fix new spring package dependencies --- build.gradle | 23 +++++++------------ gradle/wrapper/gradle-wrapper.properties | 2 +- .../gaea/app/security/WebAuthorization.kt | 9 ++++---- .../synebula/gaea/app/security/WebSecurity.kt | 4 ++-- .../java/com/synebula/gaea/jpa/JpaQuery.kt | 2 +- .../com/synebula/gaea/jpa/JpaRepository.kt | 6 ++--- .../main/java/com/synebula/gaea/jpa/Jpas.kt | 10 ++++---- .../gaea/jpa/proxy/JpaRepositoryProxy.kt | 2 +- .../method/resolver/PageMethodResolver.kt | 4 ++-- .../synebula/gaea/domain/service/Service.kt | 4 +--- .../gaea/domain/service/SimpleService.kt | 4 +--- 11 files changed, 30 insertions(+), 40 deletions(-) diff --git a/build.gradle b/build.gradle index 33c0dd3..a8001b4 100644 --- a/build.gradle +++ b/build.gradle @@ -1,12 +1,13 @@ buildscript { ext { - kotlin_version = '1.6.10' - spring_version = "2.7.0" + kotlin_version = '1.8.20' + spring_version = "3.0.5" } repositories { mavenLocal() - maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url 'https://maven.aliyun.com/repository/public' } mavenCentral() } @@ -22,14 +23,16 @@ subprojects { buildscript { repositories { mavenLocal() - maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url 'https://maven.aliyun.com/repository/public' } mavenCentral() } } repositories { mavenLocal() - maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url 'https://maven.aliyun.com/repository/public' } mavenCentral() } @@ -44,16 +47,6 @@ subprojects { testApi group: 'junit', name: 'junit', version: '4.12' } - sourceCompatibility = 1.8 - targetCompatibility = 1.8 - - compileKotlin { - kotlinOptions.jvmTarget = "1.8" - } - compileTestKotlin { - kotlinOptions.jvmTarget = "1.8" - } - publishing { // repositories { // maven { diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index d494b61..9d380cb 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ #Mon May 18 17:21:26 CST 2020 -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1-bin.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStorePath=wrapper/dists diff --git a/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebAuthorization.kt b/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebAuthorization.kt index 72102bc..377782b 100644 --- a/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebAuthorization.kt +++ b/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebAuthorization.kt @@ -3,14 +3,14 @@ package com.synebula.gaea.app.security import com.synebula.gaea.app.security.session.UserSessionManager import com.synebula.gaea.data.message.HttpMessageFactory import com.synebula.gaea.data.message.Status +import jakarta.servlet.FilterChain +import jakarta.servlet.ServletException +import jakarta.servlet.http.HttpServletRequest +import jakarta.servlet.http.HttpServletResponse import org.springframework.security.authentication.UsernamePasswordAuthenticationToken import org.springframework.security.core.context.SecurityContextHolder import org.springframework.web.filter.OncePerRequestFilter import java.io.IOException -import javax.servlet.FilterChain -import javax.servlet.ServletException -import javax.servlet.http.HttpServletRequest -import javax.servlet.http.HttpServletResponse /** @@ -64,4 +64,5 @@ class WebAuthorization( response.flushBuffer() } } + } diff --git a/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebSecurity.kt b/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebSecurity.kt index b906b2a..3278a16 100644 --- a/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebSecurity.kt +++ b/src/gaea.app/src/main/kotlin/com/synebula/gaea/app/security/WebSecurity.kt @@ -40,7 +40,7 @@ class WebSecurity { // 设置Session的创建策略为:Spring Security永不创建HttpSession 不使用HttpSession来获取SecurityContext .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS) // 除了登录接口其他资源都必须登录访问 - .and().authorizeRequests().antMatchers(this.signInPath).permitAll().anyRequest().authenticated() + .and().authorizeHttpRequests().requestMatchers(this.signInPath).permitAll().anyRequest().authenticated() // 添加鉴权拦截器 .and().addFilterBefore( WebAuthorization(httpMessageFactory, userSessionManager), @@ -62,7 +62,7 @@ class WebSecurity { @Bean @Throws(Exception::class) fun ignoringCustomizer(): WebSecurityCustomizer { - return WebSecurityCustomizer { web -> web.ignoring().antMatchers(this.signInPath) } + return WebSecurityCustomizer { web -> web.ignoring().requestMatchers(this.signInPath) } } /** diff --git a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaQuery.kt b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaQuery.kt index 844e31b..b88bb91 100644 --- a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaQuery.kt +++ b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaQuery.kt @@ -3,8 +3,8 @@ package com.synebula.gaea.jpa import com.synebula.gaea.query.IQuery import com.synebula.gaea.query.Page import com.synebula.gaea.query.Params +import jakarta.persistence.EntityManager import org.springframework.data.jpa.repository.support.SimpleJpaRepository -import javax.persistence.EntityManager class JpaQuery(override var clazz: Class, entityManager: EntityManager) : IQuery { protected var repo: SimpleJpaRepository diff --git a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaRepository.kt b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaRepository.kt index 14c4e64..4221077 100644 --- a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaRepository.kt +++ b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/JpaRepository.kt @@ -2,13 +2,13 @@ package com.synebula.gaea.jpa import com.synebula.gaea.domain.model.IAggregateRoot import com.synebula.gaea.domain.repository.IRepository +import jakarta.persistence.EntityManager import org.springframework.data.jpa.repository.JpaRepository import org.springframework.data.jpa.repository.support.SimpleJpaRepository -import javax.persistence.EntityManager -class JpaRepository, ID>( - override var clazz: Class, +open class JpaRepository, ID>( + final override var clazz: Class, entityManager: EntityManager ) : IRepository { protected var repo: JpaRepository? = null diff --git a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/Jpas.kt b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/Jpas.kt index 8788e26..f9a2905 100644 --- a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/Jpas.kt +++ b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/Jpas.kt @@ -3,13 +3,13 @@ package com.synebula.gaea.jpa import com.synebula.gaea.data.date.DateTime import com.synebula.gaea.query.Operator import com.synebula.gaea.query.Where +import jakarta.persistence.criteria.CriteriaBuilder +import jakarta.persistence.criteria.CriteriaQuery +import jakarta.persistence.criteria.Predicate +import jakarta.persistence.criteria.Root import org.springframework.data.jpa.domain.Specification import java.lang.reflect.Field import java.util.* -import javax.persistence.criteria.CriteriaBuilder -import javax.persistence.criteria.CriteriaQuery -import javax.persistence.criteria.Predicate -import javax.persistence.criteria.Root /** @@ -137,7 +137,7 @@ fun Map?.toSpecification(clazz: Class<*>): Specification<*> { predicates.add(predicate) } catch (e: NoSuchFieldException) { throw Error( - "class [${field.declaringClass.name}] field [${field.name}] can't annotation [@Where(${operator.declaringClass.simpleName}.${operator.name})]", + "class [${field.declaringClass.name}] field [${field.name}] can't annotation [@Where(${operator.declaringJavaClass.simpleName}.${operator.name})]", e ) } diff --git a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/JpaRepositoryProxy.kt b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/JpaRepositoryProxy.kt index fbb3cdc..288ba38 100644 --- a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/JpaRepositoryProxy.kt +++ b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/JpaRepositoryProxy.kt @@ -1,6 +1,7 @@ package com.synebula.gaea.jpa.proxy import com.synebula.gaea.jpa.proxy.method.JpaMethodProxy +import jakarta.persistence.EntityManager import javassist.* import javassist.bytecode.AnnotationsAttribute import javassist.bytecode.MethodInfo @@ -24,7 +25,6 @@ import org.springframework.data.repository.Repository import java.lang.reflect.Method import java.lang.reflect.ParameterizedType import java.lang.reflect.Type -import javax.persistence.EntityManager class JpaRepositoryProxy?, S, ID>( beanFactory: BeanFactory, diff --git a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/method/resolver/PageMethodResolver.kt b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/method/resolver/PageMethodResolver.kt index fec032c..2675c32 100644 --- a/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/method/resolver/PageMethodResolver.kt +++ b/src/gaea.jpa/src/main/java/com/synebula/gaea/jpa/proxy/method/resolver/PageMethodResolver.kt @@ -3,13 +3,13 @@ package com.synebula.gaea.jpa.proxy.method.resolver import com.synebula.gaea.jpa.toSpecification import com.synebula.gaea.query.Order import com.synebula.gaea.query.Params +import jakarta.persistence.EmbeddedId +import jakarta.persistence.Id import org.springframework.data.domain.Page import org.springframework.data.domain.PageRequest import org.springframework.data.domain.Pageable import org.springframework.data.domain.Sort import java.util.* -import javax.persistence.EmbeddedId -import javax.persistence.Id /** * 分页方法参数映射 diff --git a/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/Service.kt b/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/Service.kt index 2bb283b..bf8d2f0 100644 --- a/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/Service.kt +++ b/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/Service.kt @@ -7,7 +7,6 @@ import com.synebula.gaea.domain.event.AfterRemoveEvent import com.synebula.gaea.domain.event.BeforeRemoveEvent import com.synebula.gaea.domain.model.IAggregateRoot import com.synebula.gaea.domain.repository.IRepository -import javax.annotation.Resource /** @@ -25,9 +24,8 @@ open class Service, ID>( protected open var clazz: Class, protected open var repository: IRepository, protected open var mapper: IObjectMapper, -) : IService { - @Resource protected open var bus: IBus? = null +) : IService { /** * 增加对象 diff --git a/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/SimpleService.kt b/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/SimpleService.kt index 3d1d500..90e7801 100644 --- a/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/SimpleService.kt +++ b/src/gaea/src/main/kotlin/com/synebula/gaea/domain/service/SimpleService.kt @@ -7,7 +7,6 @@ import com.synebula.gaea.domain.event.BeforeRemoveEvent import com.synebula.gaea.domain.model.IAggregateRoot import com.synebula.gaea.domain.repository.IRepository import com.synebula.gaea.log.ILogger -import javax.annotation.Resource /** @@ -25,9 +24,8 @@ open class SimpleService, ID>( protected open var clazz: Class, protected open var repository: IRepository, override var logger: ILogger, -) : ISimpleService { - @Resource protected open var bus: IBus? = null +) : ISimpleService { override fun add(root: TRoot): DataMessage { val msg = DataMessage()