1. Organización de paquetes
    1. Ya no existe spring.jar
    2. Un directorio de fuentes y jar por módulo
  2. Soporte para Java 5
    1. Generics and varargs
    2. BeanFactory generics
      1. T getBean(String name, Class<T> requiredType)
    3. TaskExecutor interface extends java.util.concurrent.Executor
  3. Test Context Framework
    1. @RunWith(SpringJUnit4ClassRunner.class)
    2. @ContextConfiguration
    3. @Test
  4. Spring EL
    1. XML
      1. <property name="systemProperties" value="#{systemProperties}" />
    2. Annotation
      1. @Value(value = "#{systemProperties}") private Map<String, String> systemProperties;
  5. JavaConfig
    1. Configuración del ApplicationContext en una clase Java
    2. @Configuration public class JavaConfigContext { @Bean public FooService fooService() { FooServiceImpl fooService = new FooServiceImpl(); return fooService; } }
  6. Soporte para REST
    1. REST
      1. Representational State Transfer
      2. Utiliza los métodos HTTP de manera explícita (POST, GET, PUT, DELETE)
      3. No mantiene estado
      4. Expone URIs con forma de directorios
      5. Transfiere XML, JavaScript Object Notation (JSON), o ambos
    2. Anotaciones
      1. @RequestMapping(value = "/clientes/get/{idCliente}", method = RequestMethod.GET) public ModelAndView get(@PathVariable("idCliente") String idCliente, Model model)
    3. Views
      1. MarshallingView
      2. AbstractAtomFeedView
      3. AbstractRssFeedView
  7. Plataformas
    1. Requires Java 5 or above
    2. Java 6 automatically detected & supported
    3. Web container: Servlet 2.4 or above
      1. e.g. Tomcat 5.5 & 6.0
    4. Java EE level: J2EE 1.4 or above
    5. e.g. WebSphere 6.1 & 7.0
    6. Fully OSGi compatible out of the box
    7. featured in dm Server 2.0
  8. Acerca de
    1. Topic
    2. Topic