Introduction to Spring 4, Spring MVC, and Spring REST Training in Pasadena
| 
                	 We offer private customized training for groups of 3 or more attendees.
                 | ||
| Course Description | ||
| The course starts with in-depth coverage on using the powerful
capabilities of Spring's Core module to reduce coupling and increase the
flexibility, ease of maintenance, and testing of your applications. It
goes on to cover many of the most important capabilities of Spring,
including integrating persistence layers (e.g. Hibernate/JPA) with
Spring, using Spring's powerful Aspect Oriented Programming (AOP) to
program cross-cutting concerns in a safe and maintainable way, and using
Spring's declarative transaction capabilities.  The course includes
integration of Spring with Java EE Web applications, and an introduction
to Spring MVC. Spring MVC utilizes a Model-View-Controller pattern for
building Web applications, and the introduction covers the basics of
Spring MVC, and how it supports organizing your Web applications in a
highly structured, loosely coupled manner. This includes an introduction
to REST (Representational state transfer), and how to use Spring MVC to
build RESTful resources and invoke them from Ajax-based front ends. 
                        Course Length: 5 Days Course Tuition: $2250 (US) | ||
| Prerequisites | |
| Programmers with experience in working with Java and Object - Oriented (OO) programming. | |
| Course Outline | 
| 
	Session 1:   
	Introduction to Spring 
	Overview of Spring Technology 
	Challenges for Modern Applications 
	Motivation for Spring, Spring Architecture 
	The Spring Framework 
	Spring Introduction 
	Managing Beans 
	Inversion of Control / IoC, Dependency Injection / DI 
	Configuration Metadata Overview, Configuring Beans (XML) 
	The Spring Container 
	Overview of the Spring Container 
	A Simple Spring Example 
	ApplicationContext Overview 
	ClassPathXmlApplicationContext, FileSystemXmlApplicationContext, AnnotationConfigApplicationContext 
	API and Usage 
	Dependencies and Dependency Injection (DI) 
	Examining Dependencies 
	Dependency Inversion 
	Dependency Injection (DI) in Spring - Basic Configuration and Usage 
	Session 2:   
	Configuration in Depth 
	Annotation Driven Configuration 
	JSR 330 (@Named) and Spring (@Component) annotation styles 
	@Named/@Component, @Inject/@Autowired, @Repository, @Service 
	Configuring Beans and Autowiring with Annotations 
	Enabling Annotations - context:component-scan 
	Pros and Cons 
	Java Based Configuration (@Configuration) 
	Overview - code-centric Configuration 
	@Configuration and @Bean 
	Dependency Injection 
	Resolving Dependencies on Other Beans, Injecting Configuration Classes 
	Pros and Cons 
	Integrating Configuration Types 
	Choosing a Configuration Style 
	Integrating Configuration Styles 
	Importing: @Import and 
	Scanning with @Configuration style 
	Bean Scope and Lifecycle 
	Bean Scope Defined - singleton, prototype, and Other Scopes 
	Configuring Scope 
	Bean Creation Lifecycle, Lifecycle Callbacks 
	BeanPostProcessor, Event Handling 
	Session 3:   
	Wiring in Depth 
	Value Injection 
	Configuring Value Properties, Property Conversions 
	Externalizing Values in Properties Files 
	Constructor Injection 
	Constructor Injection Overview 
	Configuration - @Configuration and XML 
	p: and c: namespaces for XML configuration 
	Qualifiers / Domain Specific Language (DSL) 
	Limitations of Autowiring 
	Qualifiers and DSL 
	Creating and Using an Annotation-Based DSL for Bean Configuration 
	Benefits of Qualifiers for Bean Configuration 
	Profiles 
	Profiles Overview 
	Configuring Profiles (XML and @Configuration) 
	Activating Profiles 
	Overview of SpEL 
	Session 4:   
	Database Access with Spring 
	Overview of Spring database support 
	Configuring a DataSource 
	Using Spring with Hibernate 
	High Level Hibernate Overview 
	SessionFactory configuration, LocalSessionFactoryBean 
	Contextual Sessions and Spring Integration 
	Using Spring with JPA 
	Managing the EntityManager (EM) 
	LocalContainerEntityManagerFactoryBean and Container-managed EMs 
	JEE and JNDI Lookup of the EM 
	Configuration and Vendor Adaptors 
	Creating a JPA Repository/DAO Bean - @PersistenceUnit, @PersistenceContext 
	Session 5:   
	Aspect Oriented Programming (AOP) 
	Overview of AOP 
	Crosscutting Concerns 
	AOP Basics, Aspect, Joinpoint, Advice, Pointcut 
	Spring AOP Introduction 
	Configuration - XML and @AspectJ 
	Defining an Aspect, Pointcut, and Advice 
	How Advice is Triggered 
	Pointcut Expressions and Advice 
	Pointcut Expression Overview 
	The execution() Designator 
	Other Designators (within, target, args, @target, ...) 
	Kinds of Advice - before, after, around, after-returning, after-throwing 
	Marker Annotations (Rubber Stamp AOP) 
	Issue with AOP Configuration 
	Defining an AOP Marker / Rubber Stamp 
	Configuring AOP Using a Marker 
	Advantages of Marker Annotations 
	@AspectJ Based AOP Support 
	@AspectJ Annotations Overview 
	Defining an Aspect, Pointcut, and Advice 
	Other Considerations 
	Spring AOP Proxies and Self-Invocation Issues 
	Load-Time Weaving 
	Caveats of AOP 
	Session 6:   
	Spring Transaction (TX) Management 
	Intro to Spring Transaction Management 
	Spring Transaction Managers 
	Spring Declarative TX Management 
	Spring TX Scope and Propagation 
	Spring TX Attributes (REQUIRED, SUPPORTS, etc) 
	XML Configuration of Transactions 
	Specifying Advice, TX Attributes, and Methods 
	Linking Advice with Pointcuts 
	Benefits of XML Configuration of TX Behavior 
	Session 7:  
	Spring Web Integration and Intro to Spring MVC 
	Integrating Spring with Java EE Web Apps - ContextLoaderListener and WebApplicationContext 
	Spring Web MVC Overview, Capabilities, Architecture (Front Controller, MVC Pattern) 
	Spring MVC Basics 
	DispatcherServlet, Configuration (@EnableWebMvc, Servlet 3 initialization), mvc Namespace 
	Controllers, @Controller, @RequestMapping (Handler Methods) 
	@RequestParam and Parameter Binding 
	View Resolvers 
	Controller Details, @RequestMapping, @RequestParam, @PathVariable 
	Model Data, @ModelAttribute, Model/ModelAndView Classes 
	Session 8:  
	Additional Spring MVC Capabilities 
	Reference Data with @ModelAttribute 
	Forms and Binding, Spring Form Tags 
	Session Attributes, @SessionAttributes 
	Validation / JSR-303 
	Session 9:  
	RESTful Services with Spring 
	REST Overview (Characteristics/Capabilities, URI Templates, REST vs SOAP 
	REST and Spring MVC 
	Spring support for REST 
	@RequestMapping/@PathVariable, @RequestBody, @ResponseBody, HTTP Method conversion 
	Writing RESTful Controllers 
	Returning XML and JSON data 
	Client-side Access to RESTful Services 
	Ajax access (Browser/JavaScript/jQuery) 
	Using Spring's RestTemplate 
	Programming Common REST Patterns 
	GET: Read 
	POST: Create 
	PUT: Update 
	DELETE: Delete 
	Session 10:   
	XML Specific Configuration 
	Collection Valued Properties - Configuring and using lists, sets, etc. 
	Additional Capabilities 
	Factory Classes and Factory Methods 
	Definition Inheritance (Parent Beans) 
	AutoWiring with XML 
	Inner Beans, Compound Names 
	Appendix:  Maven and Spring | 
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- AI Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Azure Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports Classes
- Data Classes
- Design Patterns Classes
- DevOps Classes
- Foundations of Web Design & Web Authoring Classes
- Git, Jira, Wicket, Gradle, Tableau Classes
- IBM Classes
- Java Programming Classes
- JBoss Administration Classes
- JUnit, TDD, CPTC, Web Penetration Classes
- Linux Unix Classes
- Machine Learning Classes
- Microsoft Classes
- Microsoft Development Classes
- Microsoft SQL Server Classes
- Microsoft Team Foundation Server Classes
- Microsoft Windows Server Classes
- Oracle, MySQL, Cassandra, Hadoop Database Classes
- Perl Programming Classes
- Python Programming Classes
- Ruby Programming Classes
- SAS Classes
- Security Classes
- SharePoint Classes
- SOA Classes
- Tcl, Awk, Bash, Shell Classes
- UML Classes
- VMWare Classes
- Web Development Classes
- Web Services Classes
- Weblogic Administration Classes
- XML Classes
- Introduction to Spring 6, Spring Boot 3, and Spring REST 
 15 December, 2025 - 19 December, 2025
- RED HAT ENTERPRISE LINUX SYSTEMS ADMIN II 
 8 December, 2025 - 11 December, 2025
- Python for Scientists 
 8 December, 2025 - 12 December, 2025
- RED HAT ENTERPRISE LINUX SYSTEMS ADMIN I 
 3 November, 2025 - 7 November, 2025
- Fast Track to Java 17 and OO Development 
 8 December, 2025 - 12 December, 2025
- See our complete public course listing 
Java Programming Uses & Stats
| Difficulty | Popularity | Year Created1995 | 
| Pros 
	Most Commonly Used:  
	Great Career Choice:  
	Android Apps Development: 
	It Can Run On Any Platform: 
	Great Supporting IDE's: | Cons 
	Uses a Lot of Memory: 
	Difficulty in Learning:  
	Slow Start Up Times: 
	Verbose and Complex Code: 
	Commercial License Cost: | 
| Java Programming Job Market | 
|   Average Salary |   Job Count |   Top Job Locations 
	New York City  | 
| Complimentary Skills to have along with Java Programming - If you are an experienced Java developer, learning a complimentary language to Java should come much more naturally. As an example JetBrains recently created the Kotlin programming language which is officially supported by Google for mobile development. Kotlin compiles to Java bytecode and runs on the JVM; it's purported to address many of Java's shortcomings... | 






