A few months ago, I did a series of feature previews for Skyway Builder 6.2, and now it’s time to do another series for Skyway Builder 6.3.  There are many success stories with Skyway Builder 6.2, and we received a lot of excellent community and customer feedback.  We have been working very diligently on the next release, and I know the Skyway Builder and Spring development communities are going to be very pleased with the new features.  I will follow the same format as previous feature previews.  If you’ve taken a peak at the new and improved Skyway Builder product feature page that went live last week, you got an advance look at some of the features that are coming with Skyway Builder 6.3.  Over the next few blog posts I will describe the new features in more detail.

In my blog post “Generation of Code Generation” I discussed scaffolding in the context of code generation:

Code generation continues to creep into JAVA/JEE development at a faster and more ambitious pace, making application development easier.  Most recently several RAD platforms, including RAILS and GRAILS, have been further popularizing code generation through the use of scaffolding.  Scaffolding consists of generating full applications by applying standard application patterns from a minimal set of inputs provided by the developer.  Whether these scaffolded applications are used as-is or as the starting point for additional developer customization, scaffolding is very effective at jump-starting application development.”

One of the hottest development accelerators in Skyway Builder is application scaffolding, which can be used to jump-start the development of the web, service and data layers of Spring MVC and Spring Web Flow applications.  Skyway Builder 6.3 offers some major application scaffolding improvements, and I know these features will be appealing to all types of Spring application developers.  If you are a Spring MVC novice, you will appreciate the ability to quickly produce Spring MVC applications like a pro.  If you are a Spring MVC expert, along with the increased productivity, you can control and customize the code generation process.

scaff63

Spring MVC scaffolding consists of generating a full Spring MVC application based on the CRUD application pattern. By only defining the domain model, which can consist of one or more related domain objects, the Spring MVC scaffolding engine will create all the web, service, and data layer components for managing the domain objects, including create, read, update and delete.

Starting with a domain model, Skyway Builder will scaffold a ready-to-run Spring MVC CRUD application for maintaining the domain model, and it includes support for one-to-one and one-to-many associations (relationships between domain objects).  Here’s a glimpse of what gets automatically created by Skyway Builder’s scaffolding functionality:

  • data access objects (DAO) for each domain object (Spring @Repository)
  • a set of JPQL named queries for each domain object and associations (JPA @NamedQuery/@NamedQueries)
  • fully implemented services supporting CRUD operations (Spring @Service)
  • fully implemented controller supporting CRUD operations (Spring @Controller)
  • Junit tests for controllers, services, and DAOs
  • layout managed user interface using Sitemesh
  • CRUD JSP pages using Spring Form tag library and JSTL
  • Client-side validation implemented Spring JavaScript with DOJO
  • localized user interface
  • integration with Spring Security, including a default DB implementation of users and authorities

It’s also worth pointing out that while the scaffolding generates a fully wired and ready-to-run Spring MVC application, the scaffolding engine in Skyway Builder accomplishes this by generating the appropriate Spring DSL artifacts. This enables an application developer to continue to refine the scaffolded application, if needed, using the Spring DSL abstraction layer.

It’s not always obvious to first time users of Skyway Builder, but the domain model to be scaffolded doesn’t have to be created directly in the Spring DSL.  Skyway Builder has a database schema import feature that will create the Spring DSL model by reverse engineering a database schema.  If you combine the scaffolding feature with the database schema import feature, you can scaffold a Spring MVC application from a pre-existing domain model defined in a database.  This is a very popular use case of Skyway Builder.

Please remember that this is a feature preview.  Skyway Builder 6.3 should be available near the end of August.  To stay in the loop on the upcoming 6.3 release, please follow us on Twitter, become a fan of Skyway Builder on Facebook, or join the Skyway Community. As one of the many benefits of joining our community, you will automatically receive product announcements and updates.

Skyway Builder 6.3 Feature Preview Series

    Bookmark and Share

    Tags: , , , , , ,

    { 1 Comment }
    1. Skyway Team Blog » Blog Archive » Skyway Builder 6.3 Feature Preview – #2 Model Packages says:

      [...] the last feature preview I discussed the new and improved Spring MVC scaffolding that is coming in Skyway Builder 6.3.  In this feature preview I want to review one of the [...]

    Leave a Reply