# The Spring.NET Framework

Reference Documentation
Version 1.2.1
Last Updated July xx, 2009 (Latest documentation)
Mark
Pollack
Rick
Evans
Aleksandar
Seovic
Bruno
Baia
Erich
Eichinger
Federico
Spinazzi
Rob
Harrop
Griffin
Caprio
Ruben
Bartelink
Choy
Rim
Erez
Mazor
The Spring
Java Team

Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically.

&preface; &overview; &background; &migration;

## Core Technologies

This initial part of the reference documentation covers all of those technologies that are absolutely integral to the Spring Framework.

Foremost amongst these is the Spring Framework's Inversion of Control (IoC) container. A thorough treatment of the Spring Framework's IoC container is closely followed by comprehensive coverage of Spring's Aspect-Oriented Programming (AOP) technologies. The Spring Framework has its own AOP framework, which is conceptually easy to understand, and which successfully addresses the 80% sweet spot of AOP requirements in enterprise programming.

The core functionality also includes an expression language for lightweight scripting and a ui-agnostic validation framework.

Finally, the adoption of the test-driven-development (TDD) approach to software development is certainly advocated by the Spring team, and so coverage of Spring's support for integration testing is covered (alongside best practices for unit testing). The Spring team have found that the correct use of IoC certainly does make both unit and integration testing easier (in that the presence of properties and appropriate constructors on classes makes them easier to wire together on a test without having to set up service locator registries and suchlike)... the chapter dedicated solely to testing will hopefully convince you of this as well.

&objects; &objects-misc; &resources; &threading; &pool; &misc; &expressions; &validation; &aop; &aop-aspect-library; &logging; &testing;

## Middle Tier Data Access

This part of the reference documentation is concerned with othe middle tier, and specifically the data access responsibilities of said tier.

Spring's comprehensive transaction management support is covered in some detail, followed by thorough coverage of the various middle tier data access frameworks and technologies that the Spring Framework integrates with.

&transaction; &dao; &dbprovider; &ado; &orm;

## The Web

This part of the reference documentation covers the Spring Framework's support for the presentation tier, specifically web-based presentation tiers.

&web; &ajax;

## Services

This part of the reference documentation covers the Spring Framework's integration with .NET distributed technologies such as .NET Remoting, Enterprise Services, Web Services. Integration with WCF Services is forthcoming. Please refer to the introduction chapter for more details.

&psa-intro; &remoting; &services; &webservices; &wcf;

## Integration

This part of the reference documentation covers the Spring Framework's integration with a number of related enterprise .NET technologies.

&messaging; &msmq; &scheduling; &templating;

## VS.NET Integration

This part of the reference documentation covers the Spring Framework's integration with VS.NET

&vsnet;

## Quickstart applications

This part of the reference documentation covers the quickstart applications included with Spring that demonstrate features in a code centric manner.

&quickstarts; &aop-quickstart; &remoting-quickstart; &web-quickstart; &springair; &data-quickstart; &tx-quickstart; &nh-quickstart; &quartz-quickstart; &nms-quickstart; &msmq-quickstart; &wcf-quickstart;

## Spring.NET for Java developers

This part of the reference documentation is for Java developers who would like a quick orientation to what is different between the Java and .NET versions of the framework.

&javadevelopers;
&xsd-configuration; &xml-custom; &xsd;