Spring is a popular Java-based framework for developing large-scale enterprise-level applications both on and off the web. It is based on the dependency injection design pattern and allows for building decoupled applications. It has grown in popularity over the years due to this nature and the number of supported projects that are still ongoing. Spring also provides support for connection to databases using both JDBC methods and object-relational mapping libraries such as Hibernate.
This course starts with how to set up simple Spring projects and define beans. We then move on to web-based MVC projects. Persistence and transactions are covered, looking at both JDBC and Hibernate ORM implementations. Finally, we cover how to secure an application, including authentication methods and user roles.
The course will be taught as a series of presentations, walk-through examples and exercises to complete. The exercises start as walkthroughs to build basic Spring projects, but by the end free reign is given to design and write larger web applications based on a given scenario. Previous experience of using standard Java is essential, and experience of using databases and writing simple queries will also be required.
Create a Spring project from scratch
Define beans and autowire them as required
Setup and develop web-based applications
Include database access with object persistence and transaction support
Secure their application using authentication via database method calls and how Spring Security can automatically secure against potential attacks
Essential: Familiarity with object-oriented programming in Java
Essential: Familiarity with basic database operations and some experience with SQL
Introduction to Spring
What is Spring and why do we want to use it?
The dependency injection pattern
Configuring a Spring project
Spring vs Java Beans
The p and c namespaces
Lifecycle of a bean
Web Applications and MVC with Spring
The MVC pattern
Web MVC in Spring
Configuring a web project
Creating and running web projects
What is aspect-oriented programming?
AspectJ and Spring
Persistence and Hibernate
JPA and persistent objects
JDBC and database access
What is Hibernate?
Configuring a Hibernate project
Mapping objects to the database
What are transactions?
Programmatic vs declarative
Transaction managers in Spring
Flow of control
Using AOP for transactions
Security attacks for web and non-web based applications
If you need training for 3 or more people, you should ask us about onsite training. Putting
aside the obvious location benefit, content can be customised to better meet your
business objectives and more can be covered than in a public classroom. It's a cost effective option.
Submit an enquiry from any page on this site, and let us know you are interested in the requirements box, or
simply mention it when we contact you.