Top Banner
Scripting in Java
12

Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Jul 04, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Scripting in Java

Page 2: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Wat is scripting?

Voorbeelden:

Javascript, shellscript, Perl, Python, Ruby, Tcl, Beanshell

JSP/JSTL, XSLT, Ant, PLSQL

2

Page 3: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

geen (expliciete) compilatie

kleine programmaatjes

losse structuur (declaraties, foutafhandeling)

Kenmerken

3

Page 4: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Toepassing

Snelle ontwikkeling van kleine programmaatjes

Scripten van een applicatie

Dynamisch aanpasbare applicatielogic

4

Page 5: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Integratie met Java

Script aanroepen vanuit Java

Interactie met Java objecten

Script compileren naar bytecode

voorbeelden: Rhino, Jython, JRuby, Groovy

5

Page 6: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

In het verschiet...

JSR 119: Java Compiler API

JSR 223: Scripting for the Java Platform

JSR 241: The Groovy programming Language

6

Page 7: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Groovy

Variant op Java syntax

Hergebruik van Java API’s (met extensies)

Alles is een object

Gebruiksmogelijkheden

geinterpreteerd script (.groovy)

gecompileerde bytecode (.class)

interactief

7

Page 8: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Groovy code

lijsten, ranges:def list = [“apples”, “peren”, “bananen”]def range = 1..10

iteratie met closure:(1..10).each { print it }

8

Page 9: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Groovy code

File IO met closure:new File(“readme.txt”).eachLine { println it }

DB access met closure:db.eachRow(“select * from books”) { row | println(row.title + “ by “ + row.author)}

9

Page 10: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Groovy code

class GroovyBean {

@Property String name;

@Property String description;

}

instance = new GroovyBean(name: “G.Bean”, description: “Groovy Bean”)

10

Page 11: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

Groovy features

Closures

Groovy Beans

Groovy SQL

Groovy Markup

Groovy!

11

Page 12: Scripting in Java - technology.amis.nl€¦ · Groovy Variant op Java syntax Hergebruik van Java API’s (met extensies) Alles is een object Gebruiksmogelijkheden geinterpreteerd

12