Core Spring
CloudLabs
Projects
Assignment
24x7 Support
Lifetime Access
.
Course Overview
The Spring Framework is an open source application framework and inversion of control container for the Java platform. The framework’s core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform. Although the framework does not impose any specific programming model, it has become popular in the Java community as an alternative to, replacement for, or even addition to the Enterprise JavaBean (EJB) model.The Spring Framework has its own AOP framework which modularizes cross-cutting concerns in aspects. The motivation for creating a separate AOP framework comes from the belief that it would be possible to provide basic AOP features without too much complexity in either design, implementation, or configuration.
At the end of the training, participants will be able to:
Pre-requisite
Experience with developing applications using Java.
Duarion
5 days
Course Outline
- XML configuration and the Spring application context
- Best practices: constructor versus setter injection
- Working with multiple configuration files
- Bean scope and factory beans
- Most popular namespaces
- Best practices when working with namespaces
- Externalizing constant values into properties files
- Working with a high number of configuration files
- Bean definition inheritance
- Autowiring and component scanning
- Component scanning: how to do it right
- XML versus annotations: when to use what
- Life cycle annotations: PostConstruct and @PreDestroy
- Stereotypes and meta-annotations
- Configuration and @Bean annotations
- Where is the magic? Inheritance-based proxies
- Equivalent to XML namespaces: Enable annotations
- When to use Java configuration
- The init phase: available interceptors
- The init phase: what is the difference between XML, annotations, and Java configuration?
- What happens during bean post processing
- Use and destruction phases
- Spring and test-driven development
- ContextConfiguration and RunWith annotations
- Application context caching and the DirtiesContext annotation
- Environment abstraction and bean definition profiles
- What problems does AOP solve?
- Differences between Spring AOP and AspectJ
- Defining pointcut expressions
- Implementing an advice: Around, @Before, @After, and so on
- How Spring integrates with existing data access technologies
- DataAccessException hierarchy
- Implementing caching using Cacheable
- jdbc namespace and the Spring JdbcTemplate
- @Transactional annotation
- Transactions configuration: XML versus annotations
- Isolation levels, transaction propagation, and rollback rules
- Transactions and integration testing
- Should you use read-only transactions?
- Quick introduction to ORM with JPA
- Benefits of using Spring with JPA
- JPA configuration in Spring
- PersistenceException versus the Spring DataAccessException
- Configuring Spring in a Web application (using Spring MVC, Struts, JSF, and so on)
- namespace
- Introduction to Spring MVC
- Using Controller and @RequestMapping annotations
- What problems does Spring Security solve?
- Configuring authentication and intercepting URLs
- Spring Security tag library for JSPs
- Security at the method level
- Customizing the Spring Security filter chain
- Remoting: Using Spring remoting and the Spring HttpInvoker for remote access
- JMS: Sending and receiving messages using the JmsTemplate
- JMX: Configuring Spring to export automatically MBeans and exporting a Spring bean as an MBean