Spring Framework - Core
Kursdauer: 5 Tage, TageskursKurssprache: deutsch
- Überblick Spring Framework 4
- Dependency Injection (XML Based, Annotation Based, Java Configurations)
- Aspekt Orientierte Programmierung mit Spring
- Spring Boot
- Spring Datenbank Zugriff (Spring Data, Hibernate, JPA, JDBC)
- Spring Transaktionen
- Spring MVC Web Programmierung (Web Views, Web Flow)
- Spring Security
- Integration mit JavaServer Faces
- Integration mit Apache Tiles
- REST Web Services mit Spring
Introducing Spring
- What Is Spring?
- Beyond Dependency Injection
- Aspect-Oriented Programming with Spring
- Accessing Data in Spring
- Simplifying and Integrating with Java EE
- Job Scheduling Support
- Mail Support
- Dynamic Languages
- Remoting Support
- Managing Transactions
- The Spring MVC Framework
- Spring Web Flow
- AJAX
- Internationalization
- Simplified Exception Handling
- The Spring Project
- Origins of Spring
- The Spring Community
- Spring for Microsoft .NET
- The Spring IDE
- The Spring Security (Formerly Acegi)
- Alternatives to Spring
- IoC and DI
- Types of IoC
- Contextualized Dependency Lookup
- Constructor DI
- Setter DI
- Injection vs. Lookup
- Setter Injection vs. Constructor Injection
- IoC in Spring
- DI with Spring
- Beans and BeanFactories
- BeanFactory Implementations
- XML Bean Definition
- Using Constructor Injection
- Injection Parameters
- Understanding Bean Naming
- Bean Instantiation Modes
- Resolving Dependencies
- Automatically Wiring Your Beans
- Checking Dependencies
- Bean Inheritance
- Spring Expression Language
- Spring Java Configuration & Spring Profiles
- AOP Concepts
- Types of AOP
- Static AOP
- Dynamic AOP
- Choosing an AOP Type
- AOP in Spring
- The AOP Alliance
- “Hello,World” in AOP
- Spring AOP Architecture
- The ProxyFactory Class
- Creating Advice in Spring
- Advisors and Pointcuts in Spring
- The Pointcut Interface
- Using ComposablePointcut
- Pointcutting Summary
- All About Proxies
- Understanding Proxies
- Using JDK Dynamic Proxies
- Using CGLIB Proxies
- Comparing Proxy Performance
- Which Proxy to Use?
- @AspectJ
- @AspectJ Aspects in Detail
- Pointcuts
- Pointcut Expressions
- Exploring the Pointcut Expressions
- Using the @Pointcuts in XML
- Types of Advice
- Argument Binding
- Introductions
- The Aspect Life Cycle
- Framework Services for AOP
- Creating Our First Aspect Using the aop Namespace
- Pointcuts in the aop Namespace
- Creating Advice Using the aop Namespace
- Introductions in the aop Namespace
- Which Style Should You Use?
- Working with Spring AOP Proxies
- Impact of Proxies
- AspectJ Integration
- Creating Your First AspectJ Aspect
- Compiling the Sample Application
- AspectJ’s Aspect Scope
- Load-Time Weaving
- Your First Load-Time Weaving Example
- LoadTimeWeaver Lookup Strategies
- Practical Uses of AOP
- Performance and Health Monitoring
- Key JDBC Concepts
- Using the DriverManager and Connections
- Using PreparedStatements
- Using CallableStatements
- Other JDBC Concepts
- Concepts in Spring Data Access Support
- JDBC Data Access Support
- Using the JdbcTemplate
- JdbcTemplate.execute
- JdbcTemplate.query and Friends
- JdbcTemplate.update
- JdbcTemplate.batchUpdate
- RdbmsOperation Subclasses
- SqlUpdate
- BatchSqlUpdate
- SqlCall and StoredProcedure
- SqlQuery and Its Subclasses
- JdbcTemplate or RdbmsOperation?
- Large Binary Objects
- JdbcDaoSupport
- Simple Spring JDBC
- SimpleJdbcTemplate
- SimpleJdbcCall
- SimpleJdbcInsert
- SimpleJdbcDaoSupport
- Hibernate Primer
- Packaging
- Introduction to Hibernate Support
- Using Hibernate Sessions
- Using HibernateDaoSupport
- Deciding Between HibernateTemplate and Session
- Using Hibernate in Enterprise Applications
- Preventing Stale Data Updates
- Object Equality
- Transactional Behavior
- Lazy Loading
- Dealing with Large Data Sets
- Handling Large Objects
- Combining Hibernate with Other DAO Code
- Exploring the Spring Transaction Abstraction Layer
- Analyzing Transaction Properties
- Exploring the TransactionDefinition Interface
- Using the TransactionStatus Interface
- Implementations of the PlatformTransactionManager
- Exploring a Transaction Management Sample
- Nontransactional Code
- Programmatic Transaction Management
- Using the TransactionTemplate Class
- Programmatic Transaction Management Summary
- Declarative Transaction Management
- Using the TransactionProxyFactoryBean
- Implications of Using Proxies in Transaction Management
- AOP Transaction Management
- Using Annotation-Based AOP Transaction Management
- Using XML AOP Transaction Management
- Working with Transactions Over Multiple Transactional Resources
- Implementing Your Own Transaction Synchronization
- MVC Architecture
- Spring MVC
- MVC Implementation
- Using Handler Mappings
- Spring Controllers
- AbstractController
- ParameterizableViewController
- MultiActionController
- Interceptors
- Views, Locales, and Themes
- Using Views Programmatically
- Using View Resolvers
- Using Localized Messages
- Using Locales
- Using Themes
- Command Controllers
- Using Form Controllers
- Exploring the AbstractWizardFormController
- File Upload
- Handling Exceptions
- Spring and Other Web Technologies
- Spring Conventions Over Configuration
- Controller Conventions
- MultiActionController Conventions
- Model Conventions
- View Conventions
- Using Annotations for Controller Configuration
- @Controller
- @RequestMapping
- @RequestParam
- @ModelAttribute
- Using Annotations with the Command Controller
- Using Spring Beans with JSF
- Using Spring Tiles with JSF
- Implementing JSON & XML based REST Services
- Introducing Spring Web Flow
- Core Concepts
- Obtaining Spring Web Flow
- Spring Web Flow Dependencies
- Hello,Web Flow!
- Exploring States
- View State
- Decision State
- End State
- Working with Transitions
- Advanced Concepts
- Expression Languages and Scopes
- Implementing Actions
- Model Data Binding
- Partial Rendering of Views
- Mapping Flow Input and Output Parameters
- Using Subflows
- Spring Web Flow Behind the Scenes
- Flow Execution Architecture
- Flow Executor
- Flow Definition Registry
- Flow Execution Repository
- Integration with Spring MVC
- Flow Handling
- View Resolving
- Securing Flows with Spring Security
- Step 1: Adding the SecurityFlowExecutionListener
- Step 2: Basic Authentication and Authorization Handling
- Step 3: Defining Security Rules in Flow Definitions
- Problem Solver
- Stateful Navigational Control
- Browser Navigation Bar Support and Double Submit
- Testing Flow Definitions
- HTTP configuration
- Authentication Provider
- Spring Security Annotations
- Form Based & HTTP Basic authentication
- Remember-Me Support
- Method Level Security
- Spring Security Tag Library
- Spring CSRF Protection
erforderlich:
- Kenntnisse und Programmiererfahrung in der Programmiersprache Java.
- Programmierung von Servlets und Java Server Pages