`
sillycat
  • 浏览: 2542664 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Spring Roo Docs(3)Architecture and Multi Projects

 
阅读更多
Spring Roo Docs(3)Architecture and Multi Projects

Chapter 3. Application Architecture
3.1. Architectural Overview
database backend, Java Persistence API(JPA), persistence approach, Spring Framework dependency injection
transactional management, JUnit tests, a Maven build configuration, Spring MVC-based front-end

Some tips:
1. Roo can easily set up JMS message producers, consumers and SMTP
2. Writing a services layer annotated with Spring's @Service stereotype annotation
    Exposing it using a remoting protocol to a rich client(Spring's remoting services)
3. Executing a series of predefined actions against the database with Spring's @Scheduled or @Async timer annotations

Layers
1. entity layer (similar to a domain layer)
2. web layer

3.2 Critical Technologies
AspectJ and Spring
3.2.1AspectJ
Roo projects use AspectJ's powerful inter-type declaration(ITD) features. Our .java files do not need to do anything unnatural like reference the generated ITD file and the whole process.

All the file in *_Roo_*.aj is an AspectJ ITD.
3.2.2 Spring

3.3. Entity Layer
Once I update the model in Base.java, that is an entity object in project pizza. Roo system will update the related Base.java
Base_Roo_JavaBean.aj
Base_Roo_Jpa_Entity.aj
Base_Roo_Jpa_ActiveRecord.aj
Base_Roo_ToString.aj

And if we need this function, we need to open the spring roo command shell window.

3.4. Web Layer
3.5. Optional Services Layer
3.6. Goodbye DAOs
3.7. Maven
3.7.1. Packaging
3.7.2. Multi-Module Support
find the example named multimodule.roo.
>mkdir petclinic
>cd petclinic
>roo
roo>script --file multimodule.roo
roo>quit
>mvn clean install
>cd ui/mvc
>mvn tomcat:run

verify this URL http://localhost:8080/mvc

I only studied module and enum in this project.
module
roo>project --topLevelPackage com.springsource.petclinic --packaging POM
roo>module create --moduleName core --topLevelPackage com.example.petclinic
roo>module focus --moduleName ~
roo>module create --moduleName ui --topLevelPackage com.example.petclinic.ui --packaging POM
roo>module create --moduleName mvc --topLevelPackage com.example.petclinic.ui.mvc

The project structure will be as follow:
petclinic
  ---->core
  ---->ui
         ---->mvc

enum
roo>enum type --class ~.reference.PetType
roo>enum constant --name Dog
roo>enum constant --name Cat
roo>enum constant --name Bird


references:

books:
spring-roo-docs.pdf

分享到:
评论

相关推荐

    spring-roo-docs

    ### SpringRoo-ReferenceDocumentation 1.2.5.RELEASE 关键知识点解析 #### 一、SpringRoo简介 **1.1 SpringRoo是什么?** SpringRoo是一款旨在提高开发效率的工具,它能够帮助开发者快速搭建基于Spring框架的...

    Spring Roo In Action

    Spring Roo是一个轻量级的Java开发工具,用于快速搭建Spring应用。它采用了一种新的方式来开发Spring应用程序,即通过命令行而非传统的集成开发环境(IDE)。Spring Roo提供了一系列命令,使得开发者可以轻松地创建...

    spring roo使用文档

    ### Spring Roo 使用文档知识点概述 #### 一、Spring Roo 简介 - **Spring Roo** 是一个基于命令行的工具,旨在简化 Spring 应用程序的开发过程。 - **功能定位**:它通过提供一系列预定义的命令来加速应用程序的...

    Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序

    **Spring Roo 简介,第 4 部分: 用 Spring Roo 和 Cloud Foundry 在云中快速开发应用程序** 在本篇文章中,我们将深入探讨 Spring Roo 的使用,以及如何结合 Cloud Foundry 进行云端应用开发。Spring Roo 是一个...

    spring roo in action

    Spring Roo是一个用于快速开发Java应用程序的框架,它结合了Spring生态系统的强大功能,尤其是对Spring MVC、Spring Security、Spring Tiles、Spring Web Flow以及Spring测试支持等方面。 Spring Roo利用了一种...

    Spring ROO

    **Spring ROO详解** Spring ROO是Spring框架下的一个快速开发工具,旨在简化Java应用程序的构建过程,尤其针对企业级应用。它通过自动化任务、代码生成以及最佳实践的应用,极大地提高了开发效率。Spring ROO的核心...

    Spring Roo命令文档

    **Spring Roo命令文档** Spring Roo是Spring框架的一部分,它提供了一种快速开发工具,帮助开发者在Java应用中创建和管理代码。Roo通过自动化过程,简化了常见的开发任务,如设置项目结构、创建实体类、生成数据库...

    spring roo 1.1.3 学习资料

    3. **数据库支持**:Spring Roo支持多种主流数据库,包括MySQL、Oracle、PostgreSQL等,可以通过简单的命令行操作进行数据库建模,生成相应的数据访问对象(DAO)和实体类。 4. **技术栈整合**:Roo与Spring MVC、...

    spring-roo-1.1.5.RELEAS

    3. **技术栈集成**:Roo与Spring MVC、Spring Security、Spring Data等Spring组件紧密集成,简化了这些技术的配置和使用。 4. **自动化**:通过命令行工具,开发者可以快速执行常见任务,如添加字段、生成CRUD操作、...

    SpringRoo 官方文档-版本 2.0.0.RC1

    ### SpringRoo官方文档知识点概览 #### 一、概述 SpringRoo 是一款由 Pivotal Software(现为 VMware 的一部分)开发的快速应用开发工具。它旨在帮助开发者简化基于Spring框架的应用程序构建过程。SpringRoo 通过...

    spring roo 生成数据库表

    Spring Roo是Spring框架家族中的一个工具,用于加速Java开发,特别是企业级应用的构建。它通过命令行界面或集成开发环境(IDE)插件提供了一种快速开发的方式,可以帮助开发者生成代码、设置依赖和配置,使得开发...

    springroo快速学习

    3. 生成代码:SpringRoo支持自动生成领域模型类、DAO、Service和Controller代码。只需指定实体类的属性,Roo会自动完成相关的数据库映射和CRUD操作代码。 4. 测试支持:SpringRoo提供测试驱动开发的支持,可以生成...

    spring-roo-2.0.0.RC1.zip

    3. **增强的代码生成**:Spring Roo的代码生成功能可能已经优化,能够生成更符合当前最佳实践的代码,减少手动调整的需要。 4. **Spring Boot集成**:Spring Roo 2.0.0.RC1可能会进一步整合Spring Boot,使得基于...

    spring-roo-1.3.2.zip

    3. **快速应用开发(RAD)**:Spring Roo的目的是提高开发效率,通过命令行界面或集成开发环境(IDE)插件,开发者可以快速创建项目结构,添加所需的库和技术,然后自动生成相应的代码。 4. **技术栈支持**:Spring Roo...

    spring-roo-1.1.0.M1.zip_54587.m1_M1 ssh_Spring Roo download_spri

    Spring Roo是Spring Framework的一个附加工具,它为Java开发者提供了一个快速开发平台,旨在简化和加速应用程序的构建过程。"spring-roo-1.1.0.M1.zip_54587.m1_M1 ssh_Spring Roo download_spri"这个标题暗示了这是...

    Spring Roo - Reference Documentation

    ### Spring Roo - 高效开发框架的深度解析 #### 引言:Spring Roo与生产力的飞跃 Spring Roo作为Spring框架的扩展,旨在显著提升开发者在构建企业级Java应用时的效率。它通过自动化代码生成、简化项目搭建以及提供...

    os-springroo2-sample_code

    【os-springroo2-sample_code】项目是一个关于Spring Roo的示例代码库,它展示了如何使用Spring Roo框架来快速开发应用程序。Spring Roo是Spring框架的一部分,它提供了一种简化和加速Java应用开发的方式,通过自动...

    Spring Roo 简介

    3. **执行构建命令**:在终端中运行 `mvn clean install` 命令以构建 Spring Roo。这个过程可能需要几分钟的时间。 4. **验证安装**:构建完成后,可以通过运行 `roo` 命令来启动 Rooshell 并验证安装是否成功。 ##...

    vaadin-springRoo可运行的例子

    Vaadin和Spring Roo是两个强大的Java开发框架,它们在创建高效、用户友好的Web应用程序方面发挥着重要作用。这个"vaadin-springRoo可运行的例子"是一个整合了这两个框架的实际项目,提供了完整的war包和源代码,使得...

Global site tag (gtag.js) - Google Analytics