SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
既生瑜, 何生亮 
ROO 和 GRAILS 的瑜亮情節
現任職電信業 
Codedata 
MOPCON 2014 
吳欣展 
pcbill
Web Application
Layer
MVC
Convention Over Configuration 
a software design paradigm which 
seeks to decrease the number of 
decisions that developers need to 
make, gaining simplicity, but not 
necessarily losing flexibility. 
--Wikipedia
Grails 
● Groovy 
○ Script on JVM 
○ Domain-Specific Languages 
■ Grails, Gradle, Geb 
○ Closure 
● web framework 
○ No XML Configuration 
○ GORM 
○ GSP/GString
Grails 
● Groovy 
○ Script on JVM 
○ Domain-Specific Languages 
■ Grails, Gradle, Geb 
○ Closure 
● web framework 
○ No XML Configuration 
○ GORM 
○ GSP/GString
Grails 
● CLI 
○ > grails create-controller Book 
○ creates a class in the grails-app/controller 
directory 
○ http://localhost:8080/book/list
Roo
Roo 
● Java 
● Web is optional 
● No Runtime/jar 
● Fast and Simple to remove 
● AspectJ
Roo 
CLI
Roo 
CLI 
roo> project --topLevelPackage com.aspectj.rocks 
roo> jpa setup --database HYPERSONIC_IN_MEMORY --provider HIBERNATE 
roo> entity jpa --class ~.Hello 
Created SRC_MAIN_JAVA/com/aspectj/rocks 
Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello.java 
Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JpaActiveRecord.aj 
Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JpaEntity.aj 
Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_ToString.aj 
Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_Configurable.aj 
roo> field string --fieldName comment 
Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello.java 
Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JavaBean.aj 
Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_ToString.aj
Framework Code Generator
Framework Code Generator
Spring Boot 
Bootify Your Spring Applications -- JCConf 2014
Spring Boot 
● Easy to create stand-alone, production-grade 
Spring based Applications that can 
you can "just run". 
● Provide opinionated 'starter' POMs to 
simplify your Maven configuration 
● Embed Tomcat or Jetty 
● Automatically configuration 
● No code generation, No XML configuration 
● Production Ready 
● Microservices
How about Grails 3.0 ? 
Grails 3.0 will be based on Spring Boot, 
feature advanced Gradle support and 
the ability to build a range of application 
types from Micro services to traditional 
web applications. 
(https://spring.io/blog/2014/05/21/grails-2-4-released)
Thank You

Mais conteúdo relacionado

Semelhante a Jcconf2014 roo and_grails

Parkjihoon phonegap research_for_bada
Parkjihoon phonegap research_for_badaParkjihoon phonegap research_for_bada
Parkjihoon phonegap research_for_bada
웹데브모바일
 

Semelhante a Jcconf2014 roo and_grails (20)

introduction - Modul Java Programming Core Fundamental I
introduction - Modul Java Programming Core Fundamental Iintroduction - Modul Java Programming Core Fundamental I
introduction - Modul Java Programming Core Fundamental I
 
New opportunities for Developers With GraalVM
New opportunities for Developers With GraalVMNew opportunities for Developers With GraalVM
New opportunities for Developers With GraalVM
 
Grails 101
Grails 101Grails 101
Grails 101
 
Dynamic Languages Web Frameworks Indicthreads 2009
Dynamic Languages Web Frameworks Indicthreads 2009Dynamic Languages Web Frameworks Indicthreads 2009
Dynamic Languages Web Frameworks Indicthreads 2009
 
Jaoo Michael Neale 09
Jaoo Michael Neale 09Jaoo Michael Neale 09
Jaoo Michael Neale 09
 
Java 9 new features
Java 9 new featuresJava 9 new features
Java 9 new features
 
企业级软件的组件化和动态化开发实践
企业级软件的组件化和动态化开发实践企业级软件的组件化和动态化开发实践
企业级软件的组件化和动态化开发实践
 
Parkjihoon phonegap research_for_bada
Parkjihoon phonegap research_for_badaParkjihoon phonegap research_for_bada
Parkjihoon phonegap research_for_bada
 
Scripting Support in GFv3 Prelude - Full Version
Scripting Support in GFv3 Prelude - Full VersionScripting Support in GFv3 Prelude - Full Version
Scripting Support in GFv3 Prelude - Full Version
 
Scalable Django Architecture
Scalable Django ArchitectureScalable Django Architecture
Scalable Django Architecture
 
Scripting Oracle Develop 2007
Scripting Oracle Develop 2007Scripting Oracle Develop 2007
Scripting Oracle Develop 2007
 
Audit your reactive applications
Audit your reactive applicationsAudit your reactive applications
Audit your reactive applications
 
Web applications support on AGL
Web applications support on AGLWeb applications support on AGL
Web applications support on AGL
 
Compile ahead of time. It's fine?
Compile ahead of time. It's fine?Compile ahead of time. It's fine?
Compile ahead of time. It's fine?
 
Java Cloud and Container Ready
Java Cloud and Container ReadyJava Cloud and Container Ready
Java Cloud and Container Ready
 
Django Architecture Introduction
Django Architecture IntroductionDjango Architecture Introduction
Django Architecture Introduction
 
Ugo Cei Presentation
Ugo Cei PresentationUgo Cei Presentation
Ugo Cei Presentation
 
Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!
 
20191119 Cloud Native Java : GraalVM
20191119 Cloud Native Java : GraalVM20191119 Cloud Native Java : GraalVM
20191119 Cloud Native Java : GraalVM
 
Troubleshooting Native Memory Leaks in Java Applications
Troubleshooting Native Memory Leaks in Java ApplicationsTroubleshooting Native Memory Leaks in Java Applications
Troubleshooting Native Memory Leaks in Java Applications
 

Último

Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
chumtiyababu
 

Último (20)

GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
 

Jcconf2014 roo and_grails

  • 1. 既生瑜, 何生亮 ROO 和 GRAILS 的瑜亮情節
  • 2. 現任職電信業 Codedata MOPCON 2014 吳欣展 pcbill
  • 5. MVC
  • 6. Convention Over Configuration a software design paradigm which seeks to decrease the number of decisions that developers need to make, gaining simplicity, but not necessarily losing flexibility. --Wikipedia
  • 7. Grails ● Groovy ○ Script on JVM ○ Domain-Specific Languages ■ Grails, Gradle, Geb ○ Closure ● web framework ○ No XML Configuration ○ GORM ○ GSP/GString
  • 8. Grails ● Groovy ○ Script on JVM ○ Domain-Specific Languages ■ Grails, Gradle, Geb ○ Closure ● web framework ○ No XML Configuration ○ GORM ○ GSP/GString
  • 9. Grails ● CLI ○ > grails create-controller Book ○ creates a class in the grails-app/controller directory ○ http://localhost:8080/book/list
  • 10. Roo
  • 11. Roo ● Java ● Web is optional ● No Runtime/jar ● Fast and Simple to remove ● AspectJ
  • 12.
  • 14. Roo CLI roo> project --topLevelPackage com.aspectj.rocks roo> jpa setup --database HYPERSONIC_IN_MEMORY --provider HIBERNATE roo> entity jpa --class ~.Hello Created SRC_MAIN_JAVA/com/aspectj/rocks Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello.java Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JpaActiveRecord.aj Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JpaEntity.aj Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_ToString.aj Created SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_Configurable.aj roo> field string --fieldName comment Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello.java Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_JavaBean.aj Managed SRC_MAIN_JAVA/com/aspectj/rocks/Hello_Roo_ToString.aj
  • 16.
  • 18. Spring Boot Bootify Your Spring Applications -- JCConf 2014
  • 19. Spring Boot ● Easy to create stand-alone, production-grade Spring based Applications that can you can "just run". ● Provide opinionated 'starter' POMs to simplify your Maven configuration ● Embed Tomcat or Jetty ● Automatically configuration ● No code generation, No XML configuration ● Production Ready ● Microservices
  • 20. How about Grails 3.0 ? Grails 3.0 will be based on Spring Boot, feature advanced Gradle support and the ability to build a range of application types from Micro services to traditional web applications. (https://spring.io/blog/2014/05/21/grails-2-4-released)
  • 21.