Spring Framework

Software Screenshot:
Spring Framework
Software Details:
Version: 4.2.5 / 3.2.16 updated
Upload Date: 6 Mar 16
Developer: SpringSource
Distribution Type: Freeware
Downloads: 118

Rating: 3.0/5 (Total Votes: 1)

The Spring Framework provides a complete suite of software development tools that accelerate the entire building, running and management of Java enterprise applications.

Combining MVC with AOP and DI (IoC), Spring is an advanced toolkit that can be a replacement or addition to the Enterprise JavaBean (EJB) model.

Spring works by taking care of all the complex code logic that resides in the underbelly of any enterprise-ready Java software, freeing the developer to focus more on the application-level business logic.

The Spring Framework comes with lots of documentation, examples, tutorials and free plugins to extend default functionality.

What is new in this release:

  • Support @NumberFormat as a meta-annotation
  • RestTemplate logging for 404 status code
  • Ignore null in HeadersBuilder#headers
  • TcpConnection should extend java.io.Closeable

What is new in version 4.2.4 / 3.2.16:

  • Support @NumberFormat as a meta-annotation
  • RestTemplate logging for 404 status code
  • Ignore null in HeadersBuilder#headers
  • TcpConnection should extend java.io.Closeable

What is new in version 4.1.7 / 3.2.14 / 4.2.0.RC3:

  • Support @NumberFormat as a meta-annotation
  • RestTemplate logging for 404 status code
  • Ignore null in HeadersBuilder#headers
  • TcpConnection should extend java.io.Closeable

What is new in version 4.1.6 / 3.2.13 / 4.20.RC1:

  • Support @NumberFormat as a meta-annotation
  • RestTemplate logging for 404 status code
  • Ignore null in HeadersBuilder#headers
  • TcpConnection should extend java.io.Closeable

What is new in version 4.1.6 / 3.2.13:

  • Support @NumberFormat as a meta-annotation
  • RestTemplate logging for 404 status code
  • Ignore null in HeadersBuilder#headers
  • TcpConnection should extend java.io.Closeable

What is new in version 4.1.5 / 3.2.13:

  • Spring Framework 4.1.2 is our second maintenance release in the 4.1.x line but also comes as a key feature release, including many user-suggested and user-contributed improvements.

What is new in version 4.1.1:

  • Consistent handling of Java 8's Optional type.
  • A Jackson ObjectMapper builder class with refined defaults.
  • Some requested JDBC refinements.
  • Specific performance improvements.

What is new in version 4.1.0:

  • Direct field binding support with auto-growing for nested fields
  • Java 8's Optional for injection points and MVC handler parameters
  • Support for the standard @Priority annotation for dependency ordering and selection
  • Annotated @Lookup methods with support for provided constructor arguments
  • Declarative SQL scripts and programmatic transactions in the TestContext framework
  • Enhanced Hibernate JPA setup: isolation levels, discovery of managed packages
  • Annotated JMS listener methods
  • Comprehensive support for JCache (JSR-107) annotations
  • Flexible resolution and transformation of static web resources
  • MVC views: declarative resolution, Groovy markup templates, Jackson's JsonView
  • WebSocket refinements: WebSocket scope, SockJS client support, WebSocket stats
  • Performance: SpEL compiler mode, concurrency fine-tuning across the container

What is new in version 4.0.3:

  • Java 8 support is now production-ready.

What is new in version 4.0.2 / 3.2.8:

  • Strengthens Spring OXM to protect against a XXE vulnerability.

What is new in version 4.0.1 / 3.2.7:

  • Both releases come with significant bug fixes and improvements over their immediate predecessors and are strongly recommended for an upgrade.

What is new in version 3.2.4:

  • This release includes numerous bugfixes and improvements including an important security fix for Spring OXM.

What is new in version 3.2.1:

  • JmsTemplate uses configured receiveTimeout if shorter than remaining transaction timeout.
  • Added MappingJackson2MessageConverter for JMS.
  • JDBC parameter binding uses JDBC 3.0 ParameterMetaData (if available) for type determination.
  • JpaTransactionManager etc finds default EntityManagerFactory in parent context as well.
  • MimeMessageHelper encodes attachment filename if not ASCII compliant.
  • FreeMarkerConfigurationFactory properly supports TemplateLoaders when recreating Configurations.
  • SpringContextResourceAdapter implements equals/hashCode according to the JCA 1.5 contract.
  • ContextLoader properly detects pre-refreshed WebApplicationContext.
  • Added support for placeholders in @RequestMapping annotation value.
  • Added support for specifying a message code as @ResponseStatus reason.
  • HttpEntityMethodProcessor supports HttpEntity/ResponseEntity subclasses as well.
  • Tiles 3 TilesConfigurer properly works in combination with "completeAutoload".

What is new in version 3.2.0:

  • Concurrency refinements across the framework, avoiding the use of synchronization wherever possible - in particular for scoped/prototype beans
  • Allowing for @Autowired and @Value to be used as meta-annotations, e.g. to build custom injection annotations in combination with specific qualifiers
  • Support for custom @Bean definition annotations in @Configuration classes, e.g. in combination with specific qualifiers, @Lazy, @Primary, etc
  • Asynchronous MVC processing on Servlet 3.0, with Spring MVC handler methods being able to return Callables and DeferredResults
  • Inclusion of the formerly-standalone Spring MVC Test project, allowing for first-class testing of Spring MVC applications

What is new in version 3.2 RC2:

  • Tiles-3 support
  • Added support for <ref> in addition to <bean> for <mvc:message-converters>

What is new in version 3.1.3:

  • This release includes over 80 bugfixes and improvements.

What is new in version 3.1.2:

  • This release includes many important bugfixes and minor improvements and is a recommended upgrade.

What is new in version 3.2 M1:

  • Initial support for asynchronous @Controller methods
  • Early support for JCache-based cache providers
  • Significant performance improvements in autowiring of non-singleton beans
  • Initial delay support for @Scheduled and <task:scheduled>
  • Ability to choose between multiple executuors with @Async
  • Enhanced bean profile selection using the not (!) operator
  • 48 bugs fixed, 8 new features and 36 improvements implemented

What is new in version 3.1.0:

  • The environment abstraction and the associated bean definition profiles, along with centrally configurable property sources for placeholder resolution.
  • Java-based application configuration based on @Enable* annotations on configuration classes, allowing for convenient container configuration: e.g. using @EnableTransactionManagement to activate declarative transaction processing.
  • The cache abstraction with our declarative caching solution (@Cacheable etc) on top, focusing on convenient interaction between application code and cache providers.
  • The Servlet 3.0 based WebApplicationInitializer mechanism for bootstrapping a Spring web application without web.xml! This is a key piece in Spring's web configuration story, providing a rich alternative to XML-based bootstrapping.
  • Revised MVC processing with flash attribute support, a new @RequestPart annotation, and further REST support refinements. This new HandlerMapping/HandlerAdapter variant is also highly extensible for custom MVC needs.

What is new in version 3.1.0.RC1:

  • Support for Hibernate 4.0 (up to date with 4.0 CR4)
  • Complete TestContext framework support for @Configuration classes
  • Flash scope for Spring MVC
  • Support for Quartz 2.0
  • 77 bug fixes, 16 new features, 66 improvements

What is new in version 3.0.6:

  • Fixed aspects bundle to declare dependencies for @Async aspect as well
  • ProxyCreationContext uses "ThreadLocal.remove()" over "ThreadLocal.set(null)" as well
  • DefaultListableBeanFactory is only deserializable through a SerializedBeanFactoryReference
  • DefaultListableBeanFactory's getBean(name, type) attempts type conversion if necessary
  • DefaultListableBeanFactory allows for init methods to register further bean definitions (again)
  • XmlBeanDefinitionReader accepts description subelement within map entry as well (as per the XSD)
  • ConfigurationClassPostProcessor supports use of same processor instance with several factories
  • Fixed potential InjectionMetadata NPE when using SpringBeanAutowiringInterceptor
  • SpringBeanAutowiringSupport is able to process @Value annotations on any given target instance
  • Overridden @PersistenceContext annotations on subclass methods are being processed correctly
  • BeanDefinitionVisitor now actually visits factory method names
  • Restored support for String-to-ContextResource conversion
  • Restored original GenericConversionService behavior with respect to empty collections/maps
  • Restored original FormattingConversionService behavior with respect to the use of subtypes
  • Added "formatters" property to FormattingConversionServiceFactoryBean
  • Collection/array conversion returns original collection if possible (instead of first element)
  • Fixed collection element resolution when using a ConversionService with a DataBinder
  • DataBinder uses a default limit of 256 for array/collection auto-growing
  • Added "autoGrowNestedPaths" property to ConfigurableWebBindingInitializer
  • Servlet/PortletRequestDataBinder perform unwrapping for MultipartRequest as well
  • Fixed AbstractBindingResult to avoid NPE in "hashCode()" if target is null
  • Fixed several HttpHeaders issues (charset handling, quoting/unquoting)
  • SimpleClientHttpRequest uses fixed-length streaming mode (always sets content-length header)
  • Added "connectTimeout" and "readTimeout" properties to Simple/CommonsClientHttpRequestFactory
  • Explicit status code in RedirectView respected in HTTP 1.0 compatibility mode
  • FormHttpMessageConverter correctly processes POST requests
  • ResourceHttpRequestHandler does not set Content-Length header for 304 response
  • ResourceHttpRequestHandler detects invalid directory traversal in given path
  • LocaleChangeInterceptor validates locale values in order to prevent XSS vulnerability
  • HtmlUtils properly escapes single quotes as well
  • Added support for web.xml context-param "springJspExpressionSupport" (explicit "true"/"false")
  • ContextLoader and FrameworkServlet support "contextId" parameter for custom serialization id
  • RemoteExporter uses an opaque proxy for 'serviceInterface' (no AOP interfaces exposed)
  • Added "acceptProxyClasses" flag to RemoteInvocationSerializingExporter
  • Refined WebLogic RMI descriptor to only mark 'getTargetInterfaceName' method as idempotent
  • EhCacheManagerFactoryBean properly closes "ehcache.xml" input stream, if any
  • Revised JMS CachedConnectionFactory to avoid unnecessary rollback calls on Session return
  • Fixed JMS CachedConnectionFactory to fully synchronize its Session list
  • Fixed NamedParameterJdbcTemplate's handling of arrays as query parameters
  • Fixed JPA 2.0 timeout hints to correctly specify milliseconds
  • Updated Quartz package to support Quartz 1.8 as well (note: not supporting Quartz 2.0 yet)
  • Fixed @Rule execution order in SpringJUnit4ClassRunner to match standard JUnit 4 behavior

What is new in version 3.1.0.M2:

  • Code equivalents for Spring's XML namespaces
  • Builder-style APIs for code-based Hibernate configuration
  • TestContext framework support for @Configuration classes and bean definition profiles
  • Support for injection against non-standard JavaBeans setters
  • Support for Servlet 3 code-based configuration of Servlet container
  • Support for Servlet 3 MultipartResolver
  • JPA EntityManagerFactory bootstrapping without persistence.xml
  • New HandlerMethod-based Support Classes For Annotated Controller Processing
  • Consumes and Produces @RequestMapping Conditions
  • Working With URI Template Variables In Controller Methods
  • Validation For @RequestBody Method Arguments

What is new in version 3.0.5:

  • Aupport for Hibernate 3.6 final
  • Added core serializer abstraction with default implementations using Java Serialization
  • Consistent use of JDK 1.5's "ThreadLocal.remove()" over "ThreadLocal.set(null)"
  • Fixed JodaTimeContextHolder to use a non-inheritable ThreadLocal and expose a reset method
  • Revised "ClassUtils.isAssignable" semantics to cover primitives vs wrappers in both directions
  • Optimized AnnotationUtils findAnnotation performance for repeated search on same interfaces
  • ConversionService protects itself against infinite recursion in ObjectToCollectionConverter
  • Fixed TypeDescriptor to correctly resolve nested collections and their element types
  • BeanWrapper does not attempt to populate Map values on access (just auto-grows Map itself)
  • Fixed Autowired/CommonAnnotationBeanPostProcessor to prevent race condition in skipping check
  • Fixed @Value injection to correctly cache temporary null results for non-singleton beans
  • ApplicationContext registers context-specific ClassArrayEditor for its bean ClassLoader
  • Refined ApplicationContext singleton processing to not fail for manually registered null instances
  • Fixed ApplicationContext event processing for repeated invocations to non-singleton listener beans
  • Optimized @Bean error messages for static factory methods as well as for argument type mismatches
  • Modified expression parsing to pass full TypeDescriptor context through to ConversionService calls
  • Adapted expression parser's Constructor/MethodResolver to accept TypeDescriptors instead of raw types
  • SpEL supports projection on any kind of Collection (not just on Lists and arrays)
  • SpEL MapAccessor consistently rejects "target.key" style access to Maps if no such key is found
  • SpEL method invocations prefer method with fewest parameters (e.g. no-arg over vararg)
  • AspectJExpressionPointcut uses bean ClassLoader for initializing the AspectJ pointcut parser
  • Added AnnotationAsyncExecutionAspect as AspectJ-based variant of @Async processing
  • Added mode="proxy"/"aspectj" and proxy-target-class options to task:annotation-driven
  • JDBC bundle uses local ClassLoader as bean ClassLoader for "sql-error-codes.xml" parsing
  • EmbeddedDatabaseFactory shuts down database when failing to populate it in "initDatabase()"
  • Embedded database support now also works with Derby >= 10.6
  • "jdbc:embedded-database" uses id as database name to allow multiple ones in parallel
  • ResourceDatabasePopulator throws descriptive ScriptStatementFailedException with resource details
  • Added configurable Connection/Statement/ResultSet target types to Jdbc4NativeJdbcExtractor
  • Added OracleJdbc4NativeJdbcExtractor with pre-configured Oracle JDBC API types
  • DefaultLobHandler's "wrapAsLob" mode works with PostgreSQL's "getAsciiStream()" requirement
  • ResultSetWrappingSqlRowSet (as used by JdbcTemplate's "queryForRowSet") supports column labels now
  • LocalSessionFactoryBean's "entityCacheStrategies" works with region names on Hibernate 3.6 as well
  • Fixed DefaultMessageListenerContainer's no-message-received commit to work without Session caching
  • DefaultMessageListenerContainer's skips no-message-received commit on Tibco (avoiding a deadlock)
  • JaxWsPortClientInterceptor does not fall back to annotation-specified name as portName anymore
  • UriTemplate is serializable now
  • Fixed AnnotationMethodHandlerAdapter's caching to avoid concurrency issues in RequestMappingInfo
  • Fixed @MVC processing of parameter-level annotations to work with interface-based proxies again
  • Revised @RequestParam processing to support CSV-to-array/collection binding with ConversionService
  • Fixed EvalTag's EvaluationContext caching to properly handle JSP tag caching across requests
  • AbstractJasperReportsView only sets locale model attributes if not present already
  • DispatcherPortlet throws custom NoHandlerFoundException instead of misleading UnavailableException
  • DispatcherPortlet copies all action parameters to render parameters in case of an action exception
  • DispatcherPortlet's default resource serving explicitly prevents access to WEB-INF and META-INF
  • Portlet @ExceptionHandler methods allow for writing the response directly (like in the Servlet case)
  • MockHttpServletRequest/HttpSession/etc returns independent Enumeration from "getAttributeNames()"

Requirements:

  • Java 1.3 or higher

Similar Software

ColdBox
ColdBox

12 May 15

Vue.js
Vue.js

9 Feb 16

CakePHP
CakePHP

25 May 16

Other Software of Developer SpringSource

Spring Mobile
Spring Mobile

10 Dec 15

Spring Batch
Spring Batch

10 Feb 16

Spring AMQP
Spring AMQP

10 Dec 15

Comments to Spring Framework

Comments not found
Add Comment
Turn on images!