Some features described here are available in Ultimate edition only.
To support the Spring framework, IntelliJ IDEA provides
a set of plugins (the Spring Support plugin and others) and
a dedicated facet type (Spring).
All the Spring plugins are bundled with the IDE and enabled by default.
The Spring facet is often used in combination with Hibernate.
Spring support overview
The Spring support in IntelliJ IDEA includes:
- Complete coding assistance, including smart completion in configuration files.
- Spring-aware refactorings.
- Highlighting, inspections and quick-fixes.
- Visual Spring diagrams for viewing dependencies.
- A dedicated Spring file set editor.
- Built-in File Templates for Spring context files.
- Live Templates for beans and patterns.
- Spring aspect-oriented programming (AOP) support, with full coding assistance:
- Smart code completion and highlighting.
- AspectJ-aware code completion with syntax and error highlighting.
- Numerous AspectJ-aware quick-fixes.
- Enhanced navigation with active gutter icons.
- Spring AOP inspections.
- The p-namespace support for properties definition.
- 8.0+Spring annotations support.
- Support for filters to customize scanning.
- Parsing custom Spring beans
- 8.0+Navigation for beans defined with Spring custom namespaces.
- Spring 2.5: bean() pointcut designator support.
- Find by symbol.
- Quick Javadoc (Ctrl+QCommand J) on bean references.
- Coding assistance for @Configuration-annotated Java classes and related annotations
(@Bean, @Import and @DependsOn).
- Support for certain Spring 3.1 features including:
The c-namespace support with code completion,
error highlighting, quick fixes and code generation.
Bean definition profiles support.
In addition to code completion and error highlighting, the following features are available:
- For xml files containing profile definitions (<beans profile=...),
an additional status bar is provided at the top of the editor.
Shown in this bar are the names of the profiles which are currently active.
This bar also accommodates the controls for activating and deactivating the profiles.
- Definitions of active and inactive profiles are shown in the editor in different colors.
- Quick fixes (for found problems) are suggested only for the definitions that are currently active.
- You can search for profiles in the xml configuration files, @Profile annotations and Java code and,
if necessary, perform the Rename refactoring for them.
Spring Roo console which you can use right in IntelliJ IDEA, without leaving the IDE.
For the Roo console to be available, the Spring facet is not required. See Working with Spring Roo Console.
Spring Security support:
Spring Security Support in IntelliJ IDEA 12.
Spring Integration support (up to version 2.2):
Spring Integration in IntelliJ IDEA 12.
Spring Batch support with the ability to
download and configure the Spring Batch libraries.
Coding assistance features include code completion and highlighting in XML files,
and the rename refactoring.
Predefined Spring EL variables and references to step-scoped beans are resolved automatically.
For more information, see
Support for Spring Batch in IntelliJ IDEA 12.
Spring Web Flow support:
Spring Web Flow Support in IntelliJ IDEA 12.
Spring Data JPA support.
See Spring Data JPA in IntelliJ IDEA 11.
When using Spring and Hibernate in a project simultaneously, the following integration features are available:
Dedicated templates to support Hibernate in Spring configuration files.
Hibernate-aware code completion in Spring configuration files.