Spring Roo is a lightweight developer tool that makes it fast and easy to deliver instant results. Best of all, you code 100% in Java and get to reuse all your existing Java knowledge, skills and experience.
Spring Roo differs from other productivity tools by focusing on:
Create Spring web applications is easier than ever with Roo, but it also eases your journey into the next generation of technology.
Spring Roo generates applications focused on newer Spring technologies like Spring IO platform, Spring Data, etc. Indeed, Spring Roo creates Spring Boot applications.
Roo already supports cool features like REST API scaffolding and SOAP clients and SOAP services generation for easier integration with external systems. Plus we have incremental database introspection, Thymeleaf views, Spring Web Flow, Spring Security and much more actively in development.
With Roo you still program everything in Java. Its innovative approach operates entirely at compile-time and is completely compatible with your IDE. Plus because there's no runtime portion, adoption is also simplified and low risk. All your Java developers will feel comfortable and be productive from day one. Roo really represents productivity without compromise.
The reference guide includes detailed descriptions of all the features, plus an extensive user guide for main use cases.
To get started, please ensure you have the required system dependencies.
To install Spring Roo 2.0 on your STS 3.8.2+ read the reference documentation installation guide.
Finally, open your STS IDE and create your Spring Roo project.
Most of the times you will use Roo in STS IDE but sometimes it is missed the possibility to run Roo from the terminal.
Roo is a standard Java application that is fully self-contained within the Roo distribution ZIPs. So if you prefer, you can download Roo from one of the download sites, and run it from the terminal.
After downloading, unpacking, and installing Roo, try out the following steps to create an application:
mkdir hello cd hello roo.sh roo> project setup --topLevelPackage com.foo roo> jpa setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY roo> entity jpa --class ~.domain.Timer roo> field string --fieldName message --notNull roo> repository jpa --all roo> service --all roo> web mvc setup roo> web mvc view setup --type THYMELEAF roo> web mvc controller --all --responseType THYMELEAF roo> web mvc controller --all --pathPrefix /api roo> quit mvn spring-boot:run