Spring Framework tools for Java developer

If you are a Java developer and wants to learn Spring framework then you have come to the right place. In this article, I will share three ways to learn Spring framework, but before that let's understand what is a spring framework and why Java developers should learn Spring framework? Well, Spring is a framework which assists you to develop Java application by following some best practices, particularly the principle of dependency injection and inversion of control.

As per this principle, instead of class asking for its dependency, the framework provides them at runtime. Following these principles improves your code quality because it reduces coupling between different part of your applications e.g. between modules and classes, which makes it easier to test and develop.

Spring Core Spring core is the core framework which provides the container required for implement Dependency injection and inversion of control. It also provides a handy library with a lot of useful functionalities similar to Apache commons but most importantly you always need Spring core because Spring MVC, Spring Security all builds upon that.

Now the big question is which book to read and which course to join? Well, when it comes to joining a course you should always look when it is last updated and how many students have already joined it. That speaks a volume about the content and popularity of the course and on that parameter, I found Spring Framework Master Class to be the best course to start with.

Spring Security Spring Security is used to provide out-of-the-box authentication and authorization support. Since most of the Java web application need login and access control mechanism, you will find Spring MVC and Spring Security used together.

The framework is very sophisticated and provides several features to support authentication and authorization using a database, LDAP, or any custom source. The Spring in Action 4th Edition book touches a part of Spring Security but doesn't provide full coverage i.e it doesn't cover OAuth or OAuth 2.0 and many advanced concepts which is covered in the Spring Security Certification Class course by Eugen Paraschiv.

If you are a beginner who is starting with Spring security or someone who already know Spring security and wants to improve your knowledge of Spring security, this course is one of the most up-to-date resources. It has been recently updated to cover Spring Security 5.0 as well.

Spring Boot

It's one of the relatively new members of the Spring family. As the name suggests this framework help with the bootstrap process. One of the hardest thing with Spring is to start with i.e. set up and project, where you need to create a lot of configuration in XML or use a lot of annotations in Java classes and then create a WAR file and deploy into a web server to run it.

There was no simple way to start a Spring application just like you start a Java application by writing a main() method. Spring boot solves that problem by simplifying the bootstrap process.

It also provides options to embed a web server for quick development. In short, Spring Boot gives you all the power of the Spring Framework without all of its complexity.

To start with you can join Learn Spring Boot - Rapid Spring Application Development course from Udemy, it's a great course with several hands-on examples. You will not only learn Spring boot but also Spring MVC to develop web part, security to secure your application, JDBC to connect to the database and even learn how to explore your services like REST.

MORE:

Spring boot REST example

Recommended Posts

Spring Framework tools for Java developer
Features of spring framework for java developers
java framework
Java --Jersey Framework vs Spring Boot
Spring Java
Introducing Spring Boot2, a Java framework for web development (for beginners)
GraalVM for Java Performance (Windows Developer Build)
[Java Spring MVC] Controller for development confirmation
For JAVA learning (2018-03-16-01)
2017 IDE for Java
Java framework comparison
Java for statement
[Java] Spring DI ③
[Java] Collection framework
Setting up SAP Cloud Platform Tools for Java
[Java] for statement, while statement
[Spring Framework] Configuration split
Play Framework2.5 (Java) Tips
[Java] Let's create a mod for Minecraft 1.14.4 [4. Add tools]
Spring Framework multilingual support
1. Start Spring framework from 1
Spring Framework Summary-About DI
[Java] Package for management
Countermeasures for Java OutOfMemoryError
NLP for Java (NLP4J) (2)
(Memo) Java for statement
NLP for Java (NLP4J) (1)
[Development] Java framework comparison
Create Pivotal tc server Developer Edition in Spring Framework (STS)
[Event Report] WEB Security Measures Seminar for Out-of-Support Java Framework
Tools and commands that may be useful for Java troubleshooting
[Java] Sample project for developing web applications with Spring Boot
Learning Java framework # 1 (Mac version)
[Personal memo] About Spring framework
Java Config with Spring MVC
Java update for Scala users
Spring + Gradle + Java Quick Start
Java debug execution [for Java beginners]
Spring Framework self-study memo series_1
[Java] Basic statement for beginners
About Spring Framework context error
[Java] Precautions for type conversion
Books used for learning Java
Java Collections Framework Review Notes
[Java] Thymeleaf Basic (Spring Boot)
[Java] Spring AOP execution order
CICS-Run Java application-(4) Spring Boot application
Using Mapper with Java (Spring)
Java thread safe for you
Java tips --Spring execution Summary
[Java] Summary of for statements
Java for beginners, data hiding
[Java] How Spring DI works
[Java] Tips for writing source
Build Spring for Android 2.0.0 environment
[Java] [Spring] Spring Boot 1.4-> 1.2 Downgrade Note
Java installation location for mac
Spring Boot for annotation learning
Java application for beginners: stream
Java while and for statements