|
|
This document presents an overview of Spring features available in
MyEclipse.
For detailed tutorials covering Spring, please see our
Spring Introduction,
JPA & Spring Tutorial
and the
Hibernate &
Spring Tutorial. To get a better feel for MyEclipse in
general, please check our product
Documentation for more
material.
|
|
|
Add Spring capabilities to any Java project.
Figure 2.1. Adding Spring capabilities
MyEclipse supports Spring 1, Spring 2, Spring 2.5 and Spring 3.0.
Corresponding libraries are categorized and bundled with MyEclipse. Spring Java Configuration and Spring Web Flow support is also included.
Figure 2.2. Spring capabilities wizard - library selection
Use the Spring project properties page to add and group related bean configuration files.
Figure 2.3. Spring Beans project properties page
|
|
The Spring Bean Definition file wizard allows you to easily create configuration files with required namespaces.
Figure 3.1. Spring bean definition file wizard
MyEclipse includes a set of advanced bean wizards, making it easy to create new bean definitions from scratch.
Figure 3.2. Spring bean wizards
Spring bean wizards validate user input and provide content assist where possible.
Figure 3.3. Spring bean wizard
The Datasource wizard allows you to easily create a Spring datasource bean corresponding an existing MyEclipse driver.
Figure 3.4. Spring datasource wizard
The Hibernate SessionFactory wizard is a specialized wizard for Spring's LocalSessionFactoryBean.
Figure 3.5. Spring Hibernate session factory wizard
Wizards can can also be used to edit existing beans.
Figure 3.6. Editing Spring beans
Property nodes within beans can be edited as well.
Figure 3.7. Editing property nodes
The Property wizard supports a large number of Spring property types.
Figure 3.8. Spring property wizard
|
|
Special Spring-Style outline mode for the beans configuration file.
Figure 4.1. Spring-Style outline mode
The Spring Explorer is a filtered tree view which displays all
Spring projects in your workspace along with any beans, config
sets and Spring Web Flow elements it may contain. This view is
namespace aware and can be highly filtered and customized.
Figure 4.2. Spring Explorer view
Figure 4.3. Spring Explorer filters
Figure 4.4. Spring Explorer content
The Spring Explorer view will also specially annotate any beans
defined via Spring Java Configuration.
Figure 4.5. Spring Explorer Java Config support
All Spring projects will contain a "Spring Elements" child when seen in the Project Explorer view. This item can be expanded to show beans, config sets and web flow definitions just like the Spring Explorer view described above. The ability to see list of all beans which reference a particular Java class is a key feature.
Figure 4.6. Project Explorer with Spring Elements node
Like the Spring Explorer, the Spring elements shown in this view
can be filtered and customized. You can also use a special Spring
working set to cut down the clutter in the Project Explorer.
Figure 4.7. Spring Working Sets
The Graph viewer presents a graphical view of the relationships between various beans in a given configuration file.
Figure 4.8. Spring graph editor
Use the Open Bean wizard (Alt + Shift + B) to quickly navigate to any bean.
Figure 4.9. Open Spring bean wizard
Use a reference search (Ctrl + Shift + G) to find all beans which reference a particular bean.
Figure 4.10. Bean reference search
In addition to the Bean search, you can now search for Pointcut
Matches in your workspace from the Search menu.
Figure 4.11. Bean reference search
|
|
The Spring config editor is the default editor for Spring bean configuration files.
Figure 5.1. Spring Config Editor
The editor provides content assist for class, bean Id and property attributes in addition to standard XML support.
Figure 5.2. Class content assist
Figure 5.3. Bean content assist
Figure 5.4. Property content assist
The Spring Configuration editor is also namespace aware and will
provide intelligent content assist and validation for defined
elements.
Figure 5.5. AOP namespace content assist
Figure 5.6. p namespace content assist
Renaming a Java class will automatically make changes in bean
definitions referencing that class. Java classes may also be
renamed directly from the bean configuration file.
Figure 5.7. Renaming a bean's Java class
Bean Ids may also be renamed.
Figure 5.8. Renaming a bean Id
Renaming a bean property will make changes in corresponding Java
class.
Figure 5.9. Renaming a bean property
In addition to standard XML validation, the editor also performs Spring specific validation.
These validators can be controlled both at the project and workspace level.
Figure 5.10. Project level validation customization
Figure 5.11. Property validation
Figure 5.12. Class & bean reference validation
|
|
The Beans Cross References view will show you all beans being
advised as well as those which advise other beans.
Figure 6.1. Beans Cross References view
The Spring Configuration editor as well as the Java editor will display special markers for methods and classes affected by your
project's AOP configuration.
Figure 6.2. Advised bean
Figure 6.3. Advised method
The Spring AOP Event Trace view will give you an idea of what is
going on under the covers as Spring IDE's internal AOP model is
being built.
Figure 6.4. AOP Event trace view
AOP support requires the AOP Reference Model Builder which can be
enabled / disabled at both the project and global level. If you
do not use AOP in your projects, you can turn it off globally.
Figure 6.5. AOP builder
|
|
MyEclipse also adds Spring Web Flow support and includes multiple versions of Spring Web Flow libraries.
Figure 7.1. Webflow 1.0 container
Figure 7.2. Web Flow definition file wizard
Use the graphical editor to easily create states, actions and
transitions.
Figure 7.3. Opening the Web Flow editor
Figure 7.4. Web Flow editor
Web flow definition files may also be edited in the XML editor
with web flow specific content assist support.
Figure 7.5. XML Web Flow editor
Validation for web flow definition files is customizable.
Figure 7.6. Web Flow validation customization
|
|
We would like to hear from you! If you liked this overview, have
some suggestions or even some corrections for us please let us
know. We track all user feedback about our learning material in
our
Documentation Forum.
Please be sure to let us know which piece of MyEclipse material
you are commenting on so we can quickly pinpoint any issues that
arise.
|