Deprecated API
Contents
-
ElementDescriptionwith no replacement since introspection is included when
adding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
. UseMemberCategory.INVOKE_DECLARED_FIELDS
if getting/setting field values is required.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is added by default whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is added by default whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
. UseMemberCategory.INVOKE_PUBLIC_FIELDS
if getting/setting field values is required.as of 7.0 in favor of the-XX:MissingRegistrationReportingMode=Warn
and-XX:MissingRegistrationReportingMode=Exit
JVM flags with GraalVM.as of 6.1, in favor of the AOT engine.as of 6.1, in favor of the AOT engine.as of 6.1, in favor of the AOT engine.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0 in favor of using CSS, without direct replacement for removal in 7.1use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0 in favor ofResponseCookie
for removal in 7.1
-
InterfaceDescriptionas of 6.2, in favor of
SqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor of directResultSet.getSQLXML(int)
andConnection.createSQLXML()
usage, possibly in combination with a customSqlValue
implementationas of 6.2, in favor of a directSqlValue
implementationas of 6.2, in favor of directSQLXML
usageas of 6.2, in favor of directSQLXML
usageas of 6.2, in favor of directSQLXML
usageas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 5.3.9 in favor of using thecheckNotModified
methods inWebRequest
, or from an annotated controller method, returning aResponseEntity
with an "ETag" and/or "Last-Modified" headers set.as of 6.0 in favor of using CSS, without direct replacement
-
ClassDescriptionThis class should only be used by the runtime-hints agent when instrumenting bytecode and is not considered public API.as of 7.0 in favor of the
-XX:MissingRegistrationReportingMode=Warn
and-XX:MissingRegistrationReportingMode=Exit
JVM flags with GraalVM.as of 7.0 in favor of the-XX:MissingRegistrationReportingMode=Warn
and-XX:MissingRegistrationReportingMode=Exit
JVM flags with GraalVM.as of 5.2, along withPropertyPlaceholderConfigurer
as of 5.2; useorg.springframework.context.support.PropertySourcesPlaceholderConfigurer
instead which is more flexible through taking advantage of theEnvironment
andPropertySource
mechanisms.as of 5.3, in favor of Spring's common bean definition formats and/or custom reader implementationsas of 6.0 in favor of implementingCachingConfigurer
directlyas of 6.0 in favor of implementingJCacheConfigurer
directlyas of 6.1, in favor of the AOT engine.as of 6.1, in favor of the AOT engine.as of 6.1, in favor of the AOT engine.since 6.1 with no replacement; use an enum, map, or similar custom solution insteadsince 6.1 with no plans for a replacementsince 6.1 due to a package change; useReactorResourceFactory
instead.as of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2 along withLobHandler
, in favor ofResultSet.getBinaryStream(int)
/ResultSet.getCharacterStream(int)
usageas of 5.3, in favor of Spring's common bean definition formats and/or custom reader implementationsas of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor ofSqlBinaryValue
andSqlCharacterValue
as of 6.2, in favor of directResultSet.getSQLXML(int)
andConnection.createSQLXML()
usage, possibly in combination with a customSqlValue
implementationsince 6.0, useio.r2dbc.spi.Parameter
instead.as of 6.0 in favor of implementingAsyncConfigurer
directlyas of 6.0, in favor ofCompletableFuture
in favor of usingJSONAssert
directly or theJsonComparator
abstractionas of 6.0, in favor of a straightJtaTransactionManager
definitionas of 5.3, in favor of the default methods on theTransactionSynchronization
interfaceas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.1 in favor ofComparator.naturalOrder()
as of 6.1 in favor ofComparator.nullsLast(java.util.Comparator<? super T>)
andComparator.nullsFirst(java.util.Comparator<? super T>)
as of 6.0, with no concrete replacementas of Spring 5.1 in favor of usingHttpHeaders.setBasicAuth(String, String)
while building the request.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0, with no direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacement for removal in 7.1as of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 6.0 in favor of using CSS, without direct replacementas of 5.3, in favor of Spring's common view resolver variants and/or custom resolver implementationsas of 5.3, in favor of Spring's common view resolver variants and/or custom resolver implementationsas of 6.0 in favor ofResponseCookie
for removal in 7.1
-
ExceptionsDescriptionas of 5.3.16 since the common executors do not support start timeoutsas of 6.0.3, in favor of
PessimisticLockingFailureException
/CannotAcquireLockException
as of 6.0.3 since it is not in use within core JDBC/ORM supportas of 6.0.3, in favor ofPessimisticLockingFailureException
/CannotAcquireLockException
as of 6.2 along withLobHandler
as of 6.2, in favor of directResultSet.getSQLXML(int)
andConnection.createSQLXML()
usage, possibly in combination with a customSqlValue
implementationas of 6.0, in favor of standardServletException
nesting
-
Annotation InterfaceDescriptionsince 7.0; use
NonNull
insteadsince 7.0; useNullMarked
insteadsince 7.0; useNullMarked
insteadsince 7.0; useNullable
instead
-
FieldDescriptionUse
ClassReader.readByte(int)
and the other read methods instead. This field will eventually be deleted.as of Spring 3.0: If you are using mixed autowiring strategies, prefer annotation-based autowiring for clearer demarcation of autowiring needs.as of Spring 3.0: If you are using mixed autowiring strategies, use annotation-based autowiring for clearer demarcation of autowiring needs.this customizer might result in unexpected class leak since key object still holds a strong reference to the Object and class. It is recommended to have pre-processing method that would strip Objects and represent Classes as Stringsas of 5.2.6 since theMergedAnnotations
model always ignores lang annotations according to theAnnotationFilter.PLAIN
filter (for efficiency reasons)as of 5.3.16 along withAsyncTaskExecutor.execute(Runnable, long)
as of 5.3.16 along withAsyncTaskExecutor.execute(Runnable, long)
as of 6.1, in favor of the"autodetect" flag
as of 6.1, in favor of the"autodetect" flag
as of 6.1, in favor of the"autodetect" flag
as of 6.1, in favor of the"autodetect" flag
as of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 5.3 in favor ofUrlPathHelper.PATH_ATTRIBUTE
andServletRequestPathUtils.PATH_ATTRIBUTE
. To access the cached path used for request mapping, useServletRequestPathUtils.getCachedPathValue(ServletRequest)
.as of 6.0, with no direct replacement
-
MethodDescriptionno longer used by ASM.this method is superseded by
ClassWriter.newHandle(int, String, String, String, boolean)
.as of Spring 5.0, following the deprecation ofClass.newInstance()
in JDK 9as of 6.1, in favor of implicit post-processing throughAutowireCapableBeanFactory.initializeBean(Object, String)
as of 6.1, in favor of implicit post-processing throughAutowireCapableBeanFactory.initializeBean(Object, String)
as of 6.1, in favor ofAutowireCapableBeanFactory.createBean(Class)
as of 6.2, in favor of lenient singleton locking (with this method returning an arbitrary object to lock on)in favor ofRegisteredBean.resolveInstantiationDescriptor()
Only to keep backward compatibility.as of 7.0, always relying on@Bean
unique methods, just possibly withOptional
/ObjectProvider
argumentsas of 5.2.2, in favor ofAbstractResourceBasedMessageSource.getDefaultLocale()
as of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2 since it is superseded by theMergedAnnotations
APIas of 5.2, please implementDecoder.decode(DataBuffer, ResolvableType, MimeType, Map)
insteadas of 5.1 in favor ofEnvironment.acceptsProfiles(Profiles)
orEnvironment.matchesProfiles(String...)
since 5.2 in favor ofmethodParameter.withContainingClass(implementationClass).getParameterType()
as of 6.0, in favor ofDataBuffer.toByteBuffer(ByteBuffer)
,DataBuffer.readableByteBuffers()
, orDataBuffer.writableByteBuffers()
.as of 6.0, in favor ofDataBuffer.toByteBuffer(int, ByteBuffer, int, int)
,DataBuffer.readableByteBuffers()
, orDataBuffer.writableByteBuffers()
.as of 6.0, in favor ofDataBuffer.ensureWritable(int)
, which has different semanticssince 6.0, in favor ofDataBuffer.ensureWritable(int)
as of 6.0, in favor ofDataBuffer.split(int)
, which has different semanticsas of 6.0, in favor ofDataBuffer.split(int)
, which has different semanticsas of 6.0.5, in favor ofDataBuffer.toByteBuffer(ByteBuffer)
as of 6.0.5, in favor ofDataBuffer.toByteBuffer(int, ByteBuffer, int, int)
as of 6.0, in favor ofDataBufferFactory.allocateBuffer(int)
as of 6.0 in favor ofSpringFactoriesLoader.load(Class, ArgumentResolver, FailureHandler)
since 5.2 in favor of retaining the original MethodParameter and usingMethodParameter.nested(Integer)
if nesting is requiredas of 5.0, in favor ofMethodParameter.forExecutable(java.lang.reflect.Executable, int)
since 5.2 in favor ofMethodParameter.nested(Integer)
since 5.2 in favor ofMethodParameter.withTypeIndex(int)
as of 6.0, in favor of custom exception messages with selective inclusion of cause messagesas of 5.3.16 since the common executors do not support start timeoutsas of 6.2, in favor ofCodeFlow.generateCodeForArgument(MethodVisitor, SpelNode, String)
as of 6.2, in favor ofSpelNodeImpl.generateCodeForArguments(MethodVisitor, CodeFlow, Executable, SpelNodeImpl[])
as of 5.1.13, useCodecConfigurer.CustomCodecs.register(Object)
orCodecConfigurer.CustomCodecs.registerWithDefaultConfig(Object)
instead.as of 5.1.13, useCodecConfigurer.CustomCodecs.register(Object)
orCodecConfigurer.CustomCodecs.registerWithDefaultConfig(Object)
instead.as of 5.1.13, useCodecConfigurer.CustomCodecs.register(Object)
orCodecConfigurer.CustomCodecs.registerWithDefaultConfig(Object)
instead.as of 5.1.13, useCodecConfigurer.CustomCodecs.register(Object)
orCodecConfigurer.CustomCodecs.registerWithDefaultConfig(Object)
instead.This method is provided for backward compatibility with APIs that would only accept maps. Generally avoid using HttpHeaders as a Map or MultiValueMap.UseHttpHeaders.toSingleValueMap()
which performs a copy but ensures that collection-iterating methods likeentrySet()
are case-insensitiveas of 5.3, in favor of invokingHttpStatus.series()
directlyas of 6.0, in favor ofResponseEntity.getStatusCode()
; scheduled for removal in 7.0originally introduced for Undertow to stop write notifications when no data is available, but deprecated as of 5.0.6 since constant switching on every requested item causes a significant slowdown.as of 5.3, in favor ofJdbcOperations.query(String, ResultSetExtractor, Object...)
as of 5.3, in favor ofJdbcOperations.query(String, RowCallbackHandler, Object...)
as of 5.3, in favor ofJdbcOperations.query(String, RowMapper, Object...)
as of 5.3, in favor ofJdbcOperations.queryForList(String, Class, Object...)
as of 5.3, in favor ofJdbcOperations.queryForObject(String, Class, Object...)
as of 5.3, in favor ofJdbcOperations.queryForObject(String, RowMapper, Object...)
as of 5.1.11, in favor ofDataSourceUtils.resetConnectionAfterTransaction(Connection, Integer, boolean)
as of 5.3.29, in favor ofSQLWarningException.getSQLWarning()
as of 5.3, in favor of the JDBC 4.0 connection validationas of 5.2.9, in favor ofJdbcUtils.extractDatabaseMetaData(DataSource, DatabaseMetaDataCallback)
with a lambda expression or method reference and a generically typed resultas of 6.1, in favor of the"autodetect" flag
as of 6.1, in favor of the"autodetect" flag
as of 5.3 in favor ofRSocketRequester.Builder.transport(ClientTransport)
as of 5.3 in favor ofRSocketRequester.Builder.tcp(String, int)
as of 5.3 in favor ofRSocketRequester.Builder.websocket(URI)
as of Spring Framework 6.0 in favor ofMockServerHttpRequest.method(HttpMethod, String, Object...)
as of 5.3.29 since Hibernate 5.x aggressively closes ResultSets on commit, making it impossible to rely on ResultSet holdability. Also, Spring does not provide an equivalent setting onJpaTransactionManager
.as of 5.3.9, in favor of directThreadPoolTaskScheduler.getScheduledThreadPoolExecutor()
accessas of 6.0, in favor ofIntervalTask.getInitialDelayDuration()
as of 6.0, in favor ofIntervalTask.getIntervalDuration()
as of 6.0, in favor ofScheduledTaskRegistrar.addFixedDelayTask(Runnable, Duration)
as of 6.0, in favor ofScheduledTaskRegistrar.addFixedRateTask(Runnable, Duration)
as of 6.0, in favor onPeriodicTrigger.getInitialDelayDuration()
as of 6.0, in favor onPeriodicTrigger.getPeriodDuration()
as of 6.0, with no direct replacementas of 6.0, in favor ofPeriodicTrigger.setInitialDelay(Duration)
as of 6.0, in favor ofSimpleTriggerContext.update(Instant, Instant, Instant)
as of 6.0, in favor ofTaskScheduler.schedule(Runnable, Instant)
as of 6.0, in favor ofTaskScheduler.scheduleAtFixedRate(Runnable, Duration)
as of 6.0, in favor ofTaskScheduler.scheduleAtFixedRate(Runnable, Instant, Duration)
as of 6.0, in favor ofTaskScheduler.scheduleWithFixedDelay(Runnable, Duration)
as of 6.0, in favor ofTaskScheduler.scheduleWithFixedDelay(Runnable, Instant, Duration)
as of 6.0, in favor ofTrigger.nextExecution(TriggerContext)
as of 6.0, in favor onTriggerContext.lastActualExecution()
as of 6.0, in favor onTriggerContext.lastCompletion()
as of 6.0, in favor onTriggerContext.lastScheduledExecution()
as of Spring Framework 6.0, in favor of methods defined in theSmartContextLoader
SPIas of Spring Framework 6.0, in favor of methods defined in theSmartContextLoader
SPIsince 6.1 in favor ofMergedContextConfiguration.getPropertySourceDescriptors()
as of Spring Framework 6.0, in favor ofAbstractGenericContextLoader.loadContext(MergedContextConfiguration)
as of 5.1.13 in favor ofWebTestClient.Builder.codecs(Consumer)
as of Spring Framework 5.2 in favor ofWebTestClient.RequestBodySpec.bodyValue(Object)
in favor ofMockMvcRequestBuilders.request(HttpMethod, URI)
in favor ofStatusResultMatchers.isEarlyHints()
matching the deprecation ofHttpStatus.DESTINATION_LOCKED
matching the deprecation ofHttpStatus.INSUFFICIENT_SPACE_ON_RESOURCE
matching the deprecation ofHttpStatus.METHOD_FAILURE
in favor ofStatusResultMatchers.isFound()
matching the deprecation ofHttpStatus.REQUEST_ENTITY_TOO_LARGE
matching the deprecation ofHttpStatus.REQUEST_URI_TOO_LONG
matching the deprecation ofHttpStatus.USE_PROXY
as of Spring Framework 5.3.10, in favor ofResultActions.andExpectAll(ResultMatcher...)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.2, in favor ofTransactionAspectSupport.determineTransactionManager(TransactionAttribute, Class)
as of 5.2, in favor of custom (possibly narrower) checks such as for a Spring AOP proxyas of 5.2, in favor of custom (possibly narrower) checks or simply a check for containingClassUtils.CGLIB_CLASS_SEPARATOR
as of 5.2, in favor of custom (possibly narrower) checks or simply a check for containingClassUtils.CGLIB_CLASS_SEPARATOR
in favor ofConcurrentLruCache.capacity()
as of 6.0.as of 6.1 in favor ofArrays.hashCode(boolean[])
as of 6.1 in favor ofArrays.hashCode(byte[])
as of 6.1 in favor ofArrays.hashCode(char[])
as of 6.1 in favor ofArrays.hashCode(double[])
as of 6.1 in favor ofArrays.hashCode(float[])
as of 6.1 in favor ofArrays.hashCode(int[])
as of 6.1 in favor ofArrays.hashCode(long[])
as of 6.1 in favor ofArrays.hashCode(short[])
as of 6.1 in favor ofArrays.hashCode(Object[])
This utility uses Java Object Serialization, which allows arbitrary code to be run and is known for being the source of many Remote Code Execution (RCE) vulnerabilities.Prefer the use of an external tool (that serializes to JSON, XML, or any other format) which is regularly checked and updated for not allowing RCE.
as of 6.1, in favor ofStopWatch.lastTaskInfo()
as of 6.1, in favor ofStopWatch.lastTaskInfo()
as of 6.1, in favor ofStopWatch.lastTaskInfo()
as of 6.1, in favor ofStopWatch.lastTaskInfo()
as of 6.0 in favor ofInputStream.nullInputStream()
as of 5.3, in favor ofStringUtils.hasLength(String)
andStringUtils.hasText(String)
(orObjectUtils.isEmpty(Object)
)since 6.0, in favor ofString.stripLeading()
since 6.0, in favor ofString.stripTrailing()
since 6.0, in favor ofString.strip()
in favor ofUnknownContentTypeException.getStatusCode()
, for removal in 7.0as of 5.2, same-origin checks are performed directly byCorsUtils.isCorsRequest(org.springframework.http.server.reactive.ServerHttpRequest)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3 in favor of usingUrlBasedCorsConfigurationSource.setUrlPathHelper(UrlPathHelper)
, if at all. For further details, please seeUrlBasedCorsConfigurationSource.setAllowInitLookupPath(boolean)
.as of 5.3 in favor ofUrlPathHelper.PATH_ATTRIBUTE
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3 in favor of usingUrlBasedCorsConfigurationSource.setUrlPathHelper(UrlPathHelper)
, if at all. For further details, please seeUrlBasedCorsConfigurationSource.setAllowInitLookupPath(boolean)
.as of 5.3 in favor of usingUrlBasedCorsConfigurationSource.setUrlPathHelper(UrlPathHelper)
, if at all. For further details, please seeUrlBasedCorsConfigurationSource.setAllowInitLookupPath(boolean)
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0 without a replacement; once removed, the default model will always be ignored on redirectAs of Spring Framework 5.2, in favor ofBodyInserters.fromValue(Object)
in favor ofClientRequest.create(HttpMethod, URI)
as of 5.3 in favor of the instance basedClientResponse.mutate()
.as of Spring 5.1 in favor of usingHttpHeaders.setBasicAuth(String, String)
while building the request.as of 5.1.13 in favor ofWebClient.Builder.codecs(Consumer)
as of Spring Framework 5.2 in favor ofWebClient.RequestBodySpec.bodyValue(Object)
in 5.3.2 to be removed soon after; this method cannot provide context to downstream (nested or subsequent) requests and is of limited value.since 5.3 due to the possibility to leak memory and/or connections; please, useWebClient.RequestHeadersSpec.exchangeToMono(Function)
,WebClient.RequestHeadersSpec.exchangeToFlux(Function)
; consider also usingWebClient.RequestHeadersSpec.retrieve()
which provides access to the response status and headers viaResponseEntity
along with error status handling.in favor ofWebClientResponseException.getStatusCode()
, for removal in 7.0without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179as of 6.0, in favor ofServerRequest.method()
as of 5.3, in favor onServerRequest.requestPath()
as of Spring Framework 5.2 in favor ofServerResponse.BodyBuilder.bodyValue(Object)
as of 5.3 in favor ofReactorNettyWebSocketClient.getWebsocketClientSpec()
as of 5.3 in favor ofReactorNettyWebSocketClient.getWebsocketClientSpec()
as of 5.3 in favor of providing a supplier ofWebsocketClientSpec.Builder
with a constructor argumentas of 5.3 in favor of providing a supplier ofWebsocketClientSpec.Builder
with a constructor argumentas of 5.3 in favor of comparing codes directlyas of 5.2.6 in favor ofReactorNettyRequestUpgradeStrategy.getWebsocketServerSpec()
as of 5.2.6 in favor ofReactorNettyRequestUpgradeStrategy.getWebsocketServerSpec()
as of 5.2.6 in favor of providing a supplier ofWebsocketServerSpec.Builder
with a constructor argumentas of 5.2.6 in favor of providing a supplier ofWebsocketServerSpec.Builder
with a constructor argumentuse ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179without replacement to discourage use of path extensions for request mapping and for content negotiation (with similar deprecations and removals already applied to annotated controllers). For further context, please read issue #24179in favor ofServerRequest.method()
as of 5.3, in favor onServerRequest.requestPath()
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0, in favor of usingAbstractHandlerMapping.setUrlPathHelper(UrlPathHelper)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0, in favor of usingAbstractHandlerMapping.setUrlPathHelper(UrlPathHelper)
as of 6.0, in favor of usingAbstractHandlerMapping.setUrlPathHelper(UrlPathHelper)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3 in favor of providing non-pattern mappings viaAbstractHandlerMethodMapping.getDirectPaths(Object)
insteaduse ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3 in favor ofMappedInterceptor.matches(HttpServletRequest)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3.9 along withLastModified
.org.springframework.web.servlet.i18n.CookieLocaleResolver.determineDefaultLocale(HttpServletRequest) as of 6.0, in favor ofCookieLocaleResolver.setDefaultLocaleFunction(Function)
as of 6.0, in favor ofCookieLocaleResolver.setDefaultTimeZoneFunction(Function)
as of 6.0 in favor ofCookieLocaleResolver.setCookieMaxAge(Duration)
as of 6.0 in favor ofCookieLocaleResolver(String)
as of 6.0, in favor ofSessionLocaleResolver.setDefaultLocaleFunction(Function)
as of 6.0, in favor ofSessionLocaleResolver.setDefaultTimeZoneFunction(Function)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3.9 along withLastModified
.as of 6.0 without a replacement; once removed, the default model will always be ignored on redirectuse ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3, the path is resolved externally and obtained withServletRequestPathUtils.getCachedPathValue(ServletRequest)
; this method always returnsUrlPathHelper.defaultInstance
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3, the path is resolved externally and obtained withServletRequestPathUtils.getCachedPathValue(ServletRequest)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3, the path is resolved externally and obtained withServletRequestPathUtils.getCachedPathValue(ServletRequest)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3, the path is resolved externally and obtained withServletRequestPathUtils.getCachedPathValue(ServletRequest)
as of 5.3, the path is resolved externally and obtained withServletRequestPathUtils.getCachedPathValue(ServletRequest)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules. After the deprecation phase, it will no longer be possible to set a customized PathMatcher instance.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementuse ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 6.0, with no direct replacementas of 4.2, since thelastModified
flag is effectively ignored, with a must-revalidate header only generated if explicitly configureduse ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 6.2, in favor ofUriComponentsBuilder.fromUriString(String)
; scheduled for removal in 7.0.as of 5.3 in favor of usingUrlPathHelper.resolveAndCacheLookupPath(HttpServletRequest)
andUrlPathHelper.getResolvedLookupPath(ServletRequest)
.
-
ConstructorDescriptionthis constructor has been superseded by
Handle(int, String, String, String, boolean)
.as of 6.0.11, in favor of an extraRootBeanDefinition.setTargetType(ResolvableType)
callsince 5.2 in favor of the factory methodAnnotationMetadata.introspect(Class)
since 5.2 in favor of the factory methodAnnotationMetadata.introspect(Class)
. UseMergedAnnotation.asMap
fromStandardAnnotationMetadata.getAnnotations()
rather thanAnnotatedTypeMetadata.getAnnotationAttributes(String)
ifnestedAnnotationsAsMap
isfalse
since 5.2 in favor ofStandardAnnotationMetadata
since 5.2 in favor of obtaining instances viaAnnotationMetadata
as of Spring Framework 5.2.23 in favor of invokingOperatorMatches(ConcurrentMap, int, int, SpelNodeImpl...)
with a shared pattern cache insteadas of 5.2, in favor ofJettyClientHttpConnector(HttpClient, JettyResourceFactory)
as of 5.1, in favor ofHttpMessageNotReadableException(String, HttpInputMessage)
as of 5.1, in favor ofHttpMessageNotReadableException(String, Throwable, HttpInputMessage)
in favor ofConcurrentTaskExecutor(Executor)
with an externally provided Executorin favor ofConcurrentTaskScheduler(ScheduledExecutorService)
with an externally provided Executoras of 6.0, in favor onFixedDelayTask(Runnable, Duration, Duration)
as of 6.0, in favor onFixedRateTask(Runnable, Duration, Duration)
as of 6.0, in favor onIntervalTask(Runnable, Duration)
as of 6.0, in favor onIntervalTask(Runnable, Duration, Duration)
as of 6.0, in favor onPeriodicTrigger(Duration)
as of 6.0, in favor onPeriodicTrigger(Duration)
as of 6.0, in favor ofSimpleTriggerContext(Instant, Instant, Instant)
as of 5.2.5, in favor ofTransactionAspectSupport.setTransactionAttributes(Properties)
as of 5.2.5, in favor ofTransactionInterceptor(TransactionManager, TransactionAttributeSource)
as of 6.0.12 since JTA 1.1+ requires implicit rollback-only setting in case of an exception thrown inbeforeCompletion
, so the regularSpringJtaSynchronizationAdapter(TransactionSynchronization)
constructor is sufficient for all scenariosas of 6.0.12 since JTA 1.1+ requires implicit rollback-only setting in case of an exception thrown inbeforeCompletion
, so the regularSpringJtaSynchronizationAdapter(TransactionSynchronization)
constructor is sufficient for all scenariosas of 5.3.4 in favor usingRequestMappingInfo.Builder
viaRequestMappingInfo.paths(String...)
.as of 5.3.4 in favor usingRequestMappingInfo.Builder
viaRequestMappingInfo.paths(String...)
.since 5.3.4 in favor of using aRequestMappingInfo.Builder
viaRequestMappingInfo.mutate()
.as of 5.3.5 in favor ofHandshakeInfo(URI, HttpHeaders, MultiValueMap, Mono, String, InetSocketAddress, Map, String)
use ofPathMatcher
andUrlPathHelper
is deprecated for use at runtime in web modules in favor of parsed patterns withPathPatternParser
.as of 5.3 in favor usingRequestMappingInfo.Builder
viaRequestMappingInfo.paths(String...)
.as of 5.3 in favor usingRequestMappingInfo.Builder
viaRequestMappingInfo.paths(String...)
.since 5.3 in favor of usingRequestMappingInfo.addCustomCondition(RequestCondition)
.
-
Enum ConstantDescriptionwith no replacement since introspection is included when
adding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
. UseMemberCategory.INVOKE_DECLARED_FIELDS
if getting/setting field values is required.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is added by default whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is added by default whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
.with no replacement since introspection is included whenadding a reflection hint for a type
. UseMemberCategory.INVOKE_PUBLIC_FIELDS
if getting/setting field values is required.in favor ofHttpStatus.EARLY_HINTS
which will be returned fromHttpStatus.valueOf(103)
in favor ofHttpStatus.FOUND
which will be returned fromHttpStatus.valueOf(302)
in favor ofHttpStatus.PAYLOAD_TOO_LARGE
which will be returned fromHttpStatus.valueOf(413)
in favor ofHttpStatus.URI_TOO_LONG
which will be returned fromHttpStatus.valueOf(414)
due to security concerns regarding in-band configuration of a proxy
-
Annotation Interface ElementDescriptionas of 7.0, always relying on
@Bean
unique methods, just possibly withOptional
/ObjectProvider
arguments
-XX:MissingRegistrationReportingMode=Warn
and-XX:MissingRegistrationReportingMode=Exit
JVM flags with GraalVM.