Quick tour of STS
SpringSource Tool Suite™ (STS) provides the best Eclipse-based development environment for building Spring-powered enterprise applications. It has pre-installed plugins that provides valuable features for Spring developers. STS supplies all the tools you need for developing with the latest enterprise Java, Spring, Groovy and Grails based technologies. Included with STS is the developer edition of vFabric tcServer, the drop-in replacement for Apache Tomcat that’s optimized for Spring. STS supports application targeting to local, virtual and cloud-based servers. It is freely available for development and internal business operations use with no time limits. The main plug-in for STS is Spring IDE, which provides the fundamental Spring tooling features required for your application. STS comes preconfigured with many other plugins such as M2Eclipse for Maven, Web Tools Platform (WTP), Data Tools Platform (DTP), and AspectJ Development Tools (AJDT) and JUnit tooling.
Why use SpringSource Tool Suite
Due to the following features below, you should use STS for developing Spring based applications:
- Content aware XML Spring Bean editing and refactoring
- Content-aware Spring shortcuts for Java classes
- Graphical configuration editing
- Validators for project configuration
- Spring Insight and tcServer
Core support by STS
SpringSource Tool Suite gives certain core Spring support by default. These are given as bullet points below:
- Graphical Spring configuration editor
- Spring project, bean and XML file wizards
- Spring application blue prints and best practice validation
- Bean mapping visual editor
Other spring related technology support by STS
STS not only gives core Spring support, it also give other technology support as well. These are given as bullet points below:
- Spring Web Flow and Spring Batch visual development tools
- Spring Roo project wizard and integrated development shell
- OSGi bundle overview and visual dependency graph
- Spring AOP visualization of cross cutting reference model, bean cross references view and pointcut expression validation
Features in STS which needs mention
Features in STS which needs special mention are given below:
Eclipse perspective displaying views such as Spring Explorer and other standard Eclipse views: Servers, Spring Explorer, Task List, Outline, Console, Markers, and Progress. This is a convenient layout that can be customized according to your wish.
Spring Explorer View
This is the view which provides the ability to visualize the Bean Config files within Spring projects. Here you can view the beans graph visualizer, create bean config files, define Bean Config sets, define new beans, validate beans, and open MVC request mappings.
Project Explorer View
This view provides you with the ability to look at the project by its component types such as Spring Elements, Bean Config Files, Bean Config Sets, Web Service components, Java Resources, and more.
Spring MVC Request Mappings
Spring MVC is very powerful and easy to configure using annotations. Request Mappings are usually annotated in your java files and because it is scattered in various Java files, it’s quite difficult for a developer to see the overall mappings in an application in one place. This request mapping visualizer makes the developer life easy by giving a single view for such request mappings. The view provides the following details:
- Handler Method
- Resource URL
- Resource Method: GET, POST, etc.
Bean Config Sets
Bean config sets allow you to group bean config files together. Using Config Sets provides the ability to validate beans and bean relationships defined within multiple bean config files. Validation also provides suggestions via content assist when editing. STS performs cross-file validation on all config sets.
Visualizers in STS which needs mention
STS provides the ability to graphically view and edit various Spring configurations with ease. There are five visualizers which need special mention; they are used for viewing graphically Spring beans, Spring Batch, Spring Integration, Aspects and Web Flow.
Visual diagram of the Beans and Bean Relationships within a config file or config set. From Project Explorer, expand the project under Spring Elements, right-click the Config Set name, and choose “Open Dependency Graph”.
Figure 2 Sample Bean Graph in SpringSource Tool Suite
Figure 3 Sample Batch Graph in SpringSource Tool Suite
The graph displays the standard Hohpe/Woolf diagrams from the Enterprise Integration Patterns book.
This visualizer is editable using the tool pallet on the left. The tool pallet only shows tools based on the namespaces included in the XML file.
Figure 4 Sample Integration Graph in SpringSource Tool Suite
To see visualize Spring AOP aspects, use this view. To view this, select “Preferences > Visualizer”, under “Visualizers”, select “Spring AOP Provider”. You can also do this from the Visualizer view by clicking the down arrow in the view’s title bar and choosing preferences.
Figure 5 Sample Aspect Visualization in SpringSource Tool Suite
Web Flow Graph
The bean config editor provides the ability to edit the flows in XML or visually from the flow-graph tab.
Figure 6 Sample Web Flow Graph in SpringSource Tool Suite
Page Visitors: 7143