Be Productive in Spring

IntelliJ IDEA – the leading IDE for Java and Kotlin development with Spring


Free 30-day trial

Spring in IntelliJ IDEA

Spring and IntelliJ IDEA

IntelliJ IDEA provides a rich set of built-in developer tools and support for the Spring framework in both Java and Kotlin code, including Spring MVC, Spring Boot, Spring Integration, Spring Security, and Spring Cloud.

Get started with ease in IntelliJ IDEA

Generate a Spring Boot project right from inside your IDE.

Spring Boot project creation in IntelliJ IDEA

Spring Boot project creation

The IDE provides the Spring Initializr project wizard, which integrates with the Spring Initializr API to generate and import your project directly from the IDE.

Intelligent Coding Assistance

Enjoy outstanding coding assistance for your Spring-based source code in both Java and Kotlin.

Smart code completion for Spring in IntelliJ IDEA

Smart Code Completion

Intelligent code completion helps you write impeccable Spring-based code faster. IntelliJ IDEA is aware of the context and offers only the most appropriate suggestions not only in your Java or Kotlin files, but also in configuration properties files, URL path references, and many more situations.

Spring inspections in IntelliJ IDEA

Inspections and quick-fixes

The IDE detects errors and probable bugs in your Spring project, even before you compile and run it, and shows you an explanation and offers fixes. The IDE has dozens of Spring-specific inspections covering a wide range of problems, such as bean class autowiring errors and incorrect profile expressions.


Reliable refactorings

IntelliJ IDEA offers effective, thorough refactorings – safe Rename and Delete, Extract Method, Introduce Variable, Inline Variable or Method, and other refactorings. For example, when you Rename a class within a JPA statement, it will update everything, from the JPA entity class to every related JPA expression.

Instant Code Navigation

Take advantage of the rich navigation capabilities.

Spring gutter icons navigation in IntelliJ IDEA

Navigation through gutter icons

Navigate around your code with gutter icons that can take you to the relevant application contexts, to declarations of autowired beans, or between publishers and listeners.

Spring client-service navigation in IntelliJ IDEA

Easy client-service navigation

You can navigate from client to service by clicking on the corresponding URL in your projects with Spring MVC, Spring WebFlux, and Spring Feign.


Diagram-based navigation

IntelliJ IDEA has lots of useful diagrams that can help you analyze your application, and you can jump from each of these diagrams to the Spring element it depicts.

Powerful Search Everywhere feature for Spring in IntelliJ IDEA

Search Everywhere

Use Search Everywhere (double ⇧ / Shift) to jump to any file, class, or symbol in your project in no time at all. You can even jump between IDE actions and tool windows.

Built-in Developer Tools

Get all the tools you need bundled right from the start without having to find and install plugins.


Running Spring applications

Access the services you need for developing applications in Spring: run and debug configurations, application servers, database sessions, Docker connections, and so on, all from one place – the Services tool window.


Testing Spring applications

IntelliJ IDEA recognizes classes annotated with Spring test annotations as tests and helps you run them from the editor.
What’s more, you can easily start a bunch of tests right from the Services tool window.


Editor-based HTTP client

Compose, edit, and execute HTTP, gRPC, WebSocket, GraphQL queries right in the editor while testing your web service with the integrated HTTP client. You can save HTTP requests in a file or add as templates to the version control system and make them available directly in your project.

Spring HTTP request mappings in IntelliJ IDEA

Easy access to HTTP request mappings

Access HTTP request mappings via the integrated HTTP client and manage them in the Endpoints tool window. Methods annotated with @RequestMapping or @GetMapping have gutter icons that let you use the HTTP client to make a request to the given URI.

Spring database tool support in IntelliJ IDEA

Database tools

Get intelligent coding assistance when editing SQL, connect to live databases, run queries, browse and export data, and even manage your database schemas in an intuitive GUI right inside the IDE.

Advanced visualization

Analyze even the most complex Spring and Spring Boot projects with ease.


Spring Beans Dependencies diagram

View and analyze dependencies between beans in your project with the Spring Beans Dependencies diagram. Find the Spring element you need and jump to it right from the diagram.

Spring Application Context Dependencies diagram in IntelliJ IDEA

Spring Application Context Dependencies diagram

Visualize dependencies between multiple configuration files and analyze how they include and reference each other with the Spring Application Context Dependencies diagram. With this diagram you can easily spot and remove errors, such as circular dependencies.

Actuator tab to monitor Spring Boot application state in IntelliJ IDEA

Actuator tab

In the Actuator tab you can monitor and manage the state of Spring Boot application in the production environment – the runtime beans of the application, its status, and also request mappings.

Spring tool window in IntelliJ IDEA

Spring tool window

View the definitions of the Spring beans used in your project, and see how they are related to other beans, also navigate between Spring components and dependencies in the Spring tool window.

Spring Endpoints tool window in IntelliJ IDEA

Endpoints tool window

Get an aggregated view of the client and server APIs, used in your project for HTTP and WebSocket protocols, and generate an HTTP request in the Endpoints tool window.

Get IntelliJ IDEA

The leading Java and Kotlin IDE for Spring development

Why choose IntelliJ IDEA?

  • First-class support for the Spring framework
  • Rich set of integrated developer tools
  • Productivity boosting features

Free 30-day trial

What developers say about it

“One of the coolest things that I observed about using Spring within IntelliJ [IDEA] is Spring Initializr. I don’t have to get out of my IntelliJ IDEA and go to a website, download the code. I can do that – that adds another 2 minutes, which I want to preserve. So all I can do is just create a new project using Spring Initializr and it tells me which version of Spring is compatible with which Java version. That makes it more and more simple, so that adds to the ease of using and creating all the APIs within IntelliJ [IDEA] itself.”

Neha Sardana, Software Developer, Vice President at Morgan Stanley and JUG Leader

“Spring Boot is all about Java code, and IntelliJ [IDEA] is great at navigating Java code. It just works perfectly in that respect. You don't have XML deployment descriptors, there's no specialized servers you got to deploy to, it's just public static void main and Java code. It's the kind of stuff you would do in your university – just regular objects working together, no servers or infrastructure. IntelliJ [IDEA] has great support for all that. It's so nice! It's just fast, I love IntelliJ [IDEA] for that.”

Josh Long, Developer Advocate, Spring
Java Champion

Spring Framework Tutorials