Java 9 Programming Blueprints

Author: Jason Lee  

Publisher: Packt Publishing‎

Publication year: 2017

E-ISBN: 9781786464446

P-ISBN(Paperback): 9781786460196

Subject: TP301.6 algorithm theory;TP31 computer software

Keyword: 计算机软件,算法理论

Language: ENG

Access to resources Favorite

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Java 9 Programming Blueprints

Description

Build a variety of real-world applications by taking advantage of the newest features of Java 9 About This Book • See some of the new features of Java 9 and be introduced to parts of the Java SDK • This book provides a set of diverse, interesting projects that range in complexity from fairly simple to advanced and cover HTTP 2.0 • Take advantage of Java's new modularity features to write real-world applications that solve a variety of problems Who This Book Is For This book is for Java developers who are already familiar with the language. Familiarity with more advanced topics, such as network programming and threads, would be helpful, but is not assumed. What You Will Learn • Learn how to package Java applications as modules by using the Java Platform Module System • Implement process management in Java by using the all-new process handling API • Integrate your applications with third-party services in the cloud • Interact with mail servers using JavaMail to build an application that filters spam messages • Learn to use JavaFX to build rich GUI based applications, which are an essential element of application development • Write microservices in Java using platform libraries and third-party frameworks • Integrate a Java application with MongoDB to build a cloud-based note taking application In Detail Java is a powerful language that has applications in a wide variety of fields. From playing games on your computer to performing banking transactions, Java is at the he

Chapter

New features in Java 8

Lambdas

Streams

The new java.time package

Default methods

New features in Java 9

Java Platform Module System/Project Jigsaw

Process handling API

Concurrency changes

REPL

Projects

Process Viewer/Manager

Duplicate File Finder

Date Calculator

Social Media Aggregator

Email filter

JavaFX photo management

A client/server note application

Serverless Java

Android desktop synchronization client

Getting started

Summary

Chapter 2: Managing Processes in Java

Creating a project

Bootstrapping the application

Defining the user interface

Initializing the user interface

Adding menus

Updating the process list

Summary

Chapter 3: Duplicate File Finder

Getting started

Building the library

Concurrent Java with a Future interface

Modern database access with JPA

Building the command-line interface

Building the graphical user interface

Summary

Chapter 4: Date Calculator

Getting started

Building the library

A timely interlude

Duration

Period

Clock

Instant

LocalDate

LocalTime

LocalDateTime

ZonedDateTime

Back to our code

A brief interlude on testing

Building the command-line interface

Summary

Chapter 5: Sunago - A Social Media Aggregator

Getting started

Setting up the user interface

Setting up the controller

Writing the model class

Finishing up the controller

Adding an image for the item

Building the preferences user interface

Saving user preferences

Plugins and extensions with the Service Provider Interface

Resource handling with try-with-resources

Adding a network - Twitter

Registering as a Twitter developer

Adding Twitter preferences to Sunago

OAuth and logging on to Twitter

Adding a model for Twitter

Implementing a Twitter client

A brief look at internationalization and localization

Making our JAR file fat

Adding a refresh button

Adding another network - Instagram

Registering as an Instagram developer

Implementing the Instagram client

Loading our plugins in Sunago

Summary

Chapter 6: Sunago - An Android Port

Getting started

Building the user interface

Android data access

Android services

Android tabs and fragments

Summary

Chapter 7: Email and Spam Management with MailFilter

Getting started

A brief look at the history of email protocols

JavaMail, the Standard Java API for Email

Building the CLI

Building the GUI

Building the service

Summary

Chapter 8: Photo Management with PhotoBeans

Getting started

Bootstrapping the project

Branding your application

NetBeans modules

TopComponent - the class for tabs and windows

Nodes, a NetBeans presentation object

Lookup, a NetBeans fundamental

Writing our own nodes

Performing Actions

Services - exposing decoupled functionality

PhotoViewerTopComponent

Integrating JavaFX with the NetBeans RCP

NetBeans preferences and the Options panel

Adding a primary panel

Adding a secondary panel

Loading and saving preferences

Reacting to changes in preferences

Summary

Chapter 9: Taking Notes with Monumentum

Getting started

Microservice frameworks on the JVM

Creating the application

Creating REST Services

Adding MongoDB

Dependency injection with CDI

Finish the notes resource

Adding authentication

Building the user interface

Summary

Chapter 10: Serverless Java

Getting started

Planning the application

Building your first function

DynamoDB

Simple Email Service

Simple Notification Service

Deploying the function

Creating a role

Creating a topic

Deploying the function

Testing the function

Configuring your AWS credentials

Summary

Chapter 11: DeskDroid - A Desktop Client for Your Android Phone

Getting started

Creating the Android project

Requesting permissions

Creating the service

Server-sent events

Controlling the service state

Adding endpoints to the server

Getting conversations

Sending an SMS message

Creating the desktop application

Defining the user interface

Defining user interface behavior

Sending messages

Getting updates

Security

Securing the endpoints

Handling authorization requests

Authorizing the client

Summary

Chapter 12: What is Next?

Looking back

Looking forward

Project Valhalla

Value types

Generic specialization

Reified generics

Project Panama

Project Amber

Local-Variable Type Inference

Enhanced enums

Lambda leftovers

Looking around

Ceylon

Kotlin

Summary

Index

The users who browse this book also browse


No browse record.