- oracle · jdk 9 • modularity – jigsaw • interoperability • cloud • ease of use 7u21 •...
TRANSCRIPT
![Page 1: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/1.jpg)
![Page 2: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/2.jpg)
<Insert Picture Here>
Java Update
Harvey King 金弘权Sales Consultant
![Page 3: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/3.jpg)
3
What is “Java”
• “Java” can be refer to– Programming language– Virtual Machine– Technology Platform
![Page 4: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/4.jpg)
4
Java As a Programming Language
• “Simple”, “Objected Oriented”, “Familiar”– based upon C / C++ syntax
• "robust and secure"– Sandbox security model, bytecode verification– automatic memory management, no pointer operation
• (Machine) “Architecture Neutral and Portable”
• “Interpreted, Threaded, and Dynamic”
![Page 5: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/5.jpg)
5
“Java” as Virtual Machine
Java Application Code
Operating System
Java API’s
Memory Manager (Garbage Collection)
Interpreter/JIT Compiler
Bytecode Verifier
JRE
Source code is compiled to Java bytecode, which is verified, interpreted or JIT-compiled for the native architecture.
The Java APIs and JVM together make up the Java Runtime Environment (JRE).
JVM
![Page 6: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/6.jpg)
6
“Java” as Technology Platform
Servers Desktop Embedded TV Mobile Card
Java Language
Java SE Java ME Java Card
Java EE Java TV
BD-J
JavaFX MSA
![Page 7: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/7.jpg)
7
“Java” as Technology Platform
Java ME Embedded Java ME EmbeddedJava CardJava Card
SECURITY SMALL EMBEDDED MEDIUM EMBEDDED LARGE EMBEDDED DESKTOP SERVER
50KB-1MB
1MB-10MB
10MB-100MB
Footprint
Java SE EmbeddedJava Embedded SuiteOracle Event Processing Embedded
Java SE EmbeddedJava Embedded SuiteOracle Event Processing Embedded
100MB+
Java SEJava SE
![Page 8: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/8.jpg)
<Insert Picture Here>
8
Latest Java Update
![Page 9: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/9.jpg)
9
“Current Java”
Java SE 7
APIs Language
Java SE 7
CDC 1.1
CDC 1.1(based on SE 1.4.2)
CLDC 1.1(based on SE 1.3)
CLDC 1.1
![Page 10: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/10.jpg)
10
Java 8
Java SE 8Java SE 8
Java ME 8Java ME 8
APIs Language
![Page 11: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/11.jpg)
11
Beyond Java 8
Java SEJava SE
Small Devices
SmallDevices
APIs Language
![Page 12: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/12.jpg)
12
Lambda (JSR 335)Date/Time API (JSR 310)
Type Annotations (JSR 308)
Compact Profiles
Remove the Permanent Generation
Improve Contended Locking
Generalized Target-Type Inference
DocTree API
Parallel Array SortingBulk Data Operations
Unicode 6.2
Base64
Prepare for Modularization
Parameter Names
TLS Server Name Indication
Configurable Secure-Random Number Generation
Java SE 8Nashorn
Enhanced Verification Errors
Fence Intrinsics
Repeating Annotations
HTTP URL Permissions
Limited doPrivileged
![Page 13: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/13.jpg)
13
Java 8 Language Key Features
Key Features Benefit Message
Lambda Expressions Easier to distribute processing of collections over multiple threads
Better application performance with simpler code for enhanced productivity
Streams More functional programming style Functional style programming comes to Java - simplification and flexibility
Annotations on types Better compile time error checking Speeds up app dev process
Date and Time API Simplified API Simplified API, improves developer productivity
Compact Profiles Reduced JRE size Expands the possibilities of Java for limited footprint environments
Nashorn JavaScript engine Better JavaScript performance A new script engine with better performance for Javascript users
JavaFX Better Swing interoperability;Added HTML 5 features
WebView’s HTML 5 support, 3-D, embed Swing nodes inside a Scene Graph, new UI controls
![Page 14: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/14.jpg)
14
Java SE Embedded Summary
• Java SE 8 embedded implementations for ARM,PPC & x86
• Full Java SE 8 language & API support
• Serviceability agent and Java Flight recorder supported
• New JDK 8 Compact Profiles– Sizes ranging from 11MB to 50MB depending on API needs
• Java FX Graphics now available for embedded
• GPU accelerated FX stack implemented in 18MB of static footprint
![Page 15: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/15.jpg)
15
JavaSE Embedded
Configurable Footprint
Better Performance
Optimized for Embedded
Flight Recorder & Mission Control
Rich graphics
![Page 16: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/16.jpg)
16
![Page 17: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/17.jpg)
17
Java ME 8 Platform Overview
Java VM
AdditionalAPIs(Examples)
Java ME Connected Limited Device Configuration (CLDC) 8 (JSR 360) Java ME Connected Limited Device Configuration (CLDC) 8 (JSR 360)
AdditionalOptional APIs
AdditionalOptional APIs
On-Device I/O Access
Vertical Specific APIs
Vertical Specific APIsLocationLocation
MessagingMessagingWireless
CommunicationWireless
Communication
Web ServicesWeb Services
Protocols and Data ConversionProtocols and
Data Conversion
SensorsSensorsAdditional
Optional JSRsAdditional
Optional JSRs
Security andManagementSecurity andManagement
Use Case Software(e.g. smart pen)
Use Case Software(e.g. smart pen)
Use Case Software(e.g. wireless module)Use Case Software
(e.g. wireless module)Use Case Software
(e.g. control unit)Use Case Software
(e.g. control unit)Use Case Software(e.g. smart meter)
Use Case Software(e.g. smart meter)
Application Platform
Java ME Embedded Profile (MEEP) 8 (JSR 361)
Java ME Embedded Profile (MEEP) 8 (JSR 361)
On-Device I/O Access
Device I/O API
Device I/O API
SATSA(JSR 177)
SATSA(JSR 177)
Security and Trust Services
Generic Connection Framework
GCF 8GCF 8
![Page 18: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/18.jpg)
18
Java EE Focus and Direction
Standard: For developing enterprise applications
Modularity: Supporting modular design
Extensibility: Embracing innovation
Portability: Across vendors, across clouds
Productivity: For enterprise Java developers
![Page 19: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/19.jpg)
19
Java EE 7 – Design Objectives
Java EE 7Java EE 7
Concurrency Concurrency
Batch Applications
Batch Applications
JSON APIJSON API
WebSocketWebSocket
JMS 2.0JMS 2.0
JAX-RS 2.0 JAX-RS 2.0
EL 3.0EL 3.0
Expanded CDI& REST SupportExpanded CDI& REST Support
Broad Industry Participation
Broad Industry Participation
Build on EE 6 Momentum
Build on EE 6 Momentum
![Page 20: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/20.jpg)
20
Java Card: Open and Multi-application Platform
Java Card™ Virtual Machine
Java Card™ API
Java Card™ Runtime Environment
Card ManagementSecurity Policy
Vertical market API
Application
Applications can be loaded or removed after card issuance
Application
Application
![Page 21: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/21.jpg)
21
Java Card Architecture
Secure Chip (Smart Card/SIM/other)
Chip Specific Layer
Smart Card Kernel
Java Card VM Java Card Run-Time Env
Chip Crypto Libraries
GlobalPlatform Runtime
Security Certifications
CC (e.g. EAL 5+)
Java Card APIs
GlobalPlatform APIs Crypto proprietary APIs**
Security Domain 1
Security Domain …
Security Domain n-1
ICAO (ePass-port)
PBOC eSign
Payment App
Java Card Binary + Global Platform
Vertical specific Java Card Applets
Bio Match-on-Card
Security Certifications(Deliverables within Code, Processes & Documentation)
**Hardware specific crypto/native interface
![Page 22: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/22.jpg)
22
Java Card: Typical Hardware
• 32 - 48K ROM
• 16 - 128K EEPROM
• 1 - 2K RAM
![Page 23: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/23.jpg)
23
Java Card™ Feature and API Supported
• boolean, byte, short, int (optional)
• One-dimensional arrays
• Reference to class instance
• Packages, classes, interfaces, and exceptions
• Classes (some of java.lang)– java.lang.Object – Throwable
• long, double, float
• Characters and Strings
• Multidimensional arrays
![Page 24: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/24.jpg)
24
Java Card™ Feature and API Supported
• Java object-oriented features:– dynamic object creation– inheritance– virtual methods– access scope– generics– exception handling
• Object Deletion Mechanism (optional)
• Java features:– Dynamic Class Loading– Security Manager– Finalization– Threads– Cloning– Varargs
• Keywords native, synchronized, transient, volatile, strictfp, enum, assert
![Page 25: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/25.jpg)
25
Java 9 and Beyond
Jigsaw
Cloud
Ease of useOptimizations Generic Lang Interoperability
Penrose
OpenJFX
Project Sumatra – Java for GPUs
Ports: Power PC/AIX
Multi-Tenancy Support
Self Tuning JVM
Improved Integration with Native
Resource Management
Lang Enhancements
Unified Type SystemData Structure Optimizations
![Page 26: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/26.jpg)
26
Java Roadmap
JDK 8 (Q1 2014)• Lambda• JVM Convergence• JavaScript Interop• JavaFX 8
7u40• Java Flight Recorder• Java Mission Control
5.2• Java Discovery Protocol• Native memory tracking• Local Security Policy
JDK 9• Modularity – Jigsaw• Interoperability• Cloud• Ease of Use• Optimizations 7u21
• Java Client Security Enhancements• App Store Packaging tools
Java ME Embedded 3.4• Fast follow-on• QSC platform only• Enhanced on-device
debugging, monitoring
Java Embedded 9• Java ME and SE 9• Modularity based on
Jigsaw
Java SE Embedded 8 • Complete JVM convergence• New Compact Profiles• Significantly smaller base runtime• Embedded JRE customization tool• Support for ARM, Power PC & x86• Java Flight Recorder/Mission
Control• Simple migration of ME CDC
headless applications
Java ME Embedded 8• Java ME CLDC 8 & ME
Embedded Profile 8• “Little sibling” of Java SE 8• New & enhanced Embedded
API• New portable architecture• Small and full profilesJava ME SDK 8• Improved developer tooling &
experience
20152013 2014 2016
![Page 27: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/27.jpg)
27
We encourage you to use the newly minted corporate tagline “Hardware and Software, Engineered to Work Together.” at the end of all your presentations. This message should replace any reference to our previous corporate tagline “Software. Hardware. Complete.”
![Page 28: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/28.jpg)
28
![Page 29: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/29.jpg)
29
Java SE Commercial Offering
FeaturesFree
Java SEJava SE Support
JavaSE Advanced Desktop (*)
Java SE Advanced
Java SE Suite
Access to My Oracle Support ✔ ✔ ✔ ✔24x7, 27 language support ✔ ✔ ✔ ✔Fast fix turnarounds ✔ ✔ ✔ ✔Access to updates on older, EOL’d versions ✔ ✔ ✔ ✔
Usage tracking feature ✔ ✔ ✔Diagnostics, tooling and monitoring (desktop only) ✔ ✔ ✔Diagnostics, tooling and monitoring (server/desktop) ✔ ✔
Deterministic GC ✔
![Page 30: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/30.jpg)
<Insert Picture Here>
30
Java and Openess
![Page 31: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/31.jpg)
31
Java: the Most Open Technology PlatformOpen != “Open Source != Free
• Java the Language Specifications / features are “open” to the community
• Java the Platform Specifications are open to the community
• Java the Virtual Machine Implementation is completely independent from the Specification
![Page 32: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/32.jpg)
32
Criteria for “Open Specification”
• not controlled by one company / entity– including life cycle
• public
• readily available
• unprotected
![Page 33: - Oracle · JDK 9 • Modularity – Jigsaw • Interoperability • Cloud • Ease of Use 7u21 • Optimizations • Java Client Security Enhancements](https://reader034.vdocuments.site/reader034/viewer/2022042219/5ec559f213b08355f20aa684/html5/thumbnails/33.jpg)
33