Mastering Java EE Development with WildFly
图书信息
| 作者 | Luca Stancapiano |
| 出版社 | Packt Publishing |
| ISBN | 9781787289079 |
| 出版时间 | 2017-07-07 |
| 字数 | 54.1万 |
| 分类 | 进口书,外文原版书,电脑,网络 |
读书简介
Your one stop solution to create highly scalable enterprise grade Java applications with WildFly. About This Book ? Master Java EE development with the latest WildFly 10 application server. ? Integrate with JSF and JMS and use efficient load balancing techniques to create real-time apps ? Integrate your backend JavaScript code seamlessly into Java applications Who This Book Is For If you are a Java developer with at least basic knowledge of Java EE, then this book is for you. No previous knowledge of WildFly is required. What You Will Learn ? Configure the development environment along with native and cloud installation of WildFly ? Write a DB schema and the relative entities and how to use the relationships between the entities ? Analyze with examples all the java annotations to manage the EJB and the configuration to get better performances ? Write different REST services through the EJB ? Implement Web sockets 1.0 and know why and when use the web sockets ? Work with Active MQ and write JMS clients to manage the authentication and authorization in the clients ? Configure the mail server through the wildfly console ? Learn how and when to use a new feature JAX-RS 2.0, which is the asynchronous call through REST ? Use the new JSF features of Wildfly 10 such as Mojarra 2.2, JSF 2.2, Richfaces 4.5 In Detail Packed with rich assets and APIs, Wildfly 10 allows you to create state-of-the-art Java applications. This book will help you take your understanding of Java EE to the next level by creating distributed Java applications using Wildfly. The book begins by showing how to get started with a native installation of WildFly and it ends with a cloud installation. After setting up the development environment, you will implement and work with different WildFly features, such as implementing JavaServer Pages. You will also learn how you can use clustering so that your apps can handle a high volume of data traffic. You will also work with enterprise JavaBeans, solve issues related to failover, and implement Java Message Service integration. Moving ahead, you will be working with Java Naming and Directory Interface, Java Transaction API, and use ActiveMQ for message relay and message querying. This book will also show you how you can use your existing backend JavaScript code in your application. By the end of the book, you’ll have gained the knowledge to implement the latest Wildfly features in your Java applications. Style and approach Each part of this book shows you how to use different features of WildFly 10 to create enterprise grade Java applications as easily as possible.
目录
Title Page
Copyright
Credits
About the Author
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
Introducing Java EE and Configuring the Development Environment
JSON and HTML5
WebSockets
Simplified JMS 2.0 API
Groundwork for Cloud environments
Batch applications
Updated web profiles
Concurrency utilities
Context dependency injection
Java API for RESTful web services (JAX-RS) 2.0
Servlet 3.1
JNDI
Asynchronous invocation
Timers
EJB Lite
Development in WildFly
Operating system
Java
Application server
Build system
Structure of the exercises
Tests
IDE
Netbeans IDE
IntelliJ IDEA
Eclipse IDE
Importing exercises
Debug exercises
Summary
Working with Dependency Injection
Dependency injection 1.0 for Java
Context and dependency injection 1.1 for Java
Injection and contexts
Managed beans
Producer methods and fields
Bean types
The BeanManager object
CDI
Unmanaged
Enabled and disabled beans
The injection target
Scopes
Session beans
Service Provider Interfaces
Events
Event qualifiers
Observer methods
Container lifecycle events
Utilities
Decorators
Enabled decorators
And more...
Model
TransientReference
Interceptors 1.2
Interceptor classes
Associating an interceptor class with the target class
Default interceptors
Interceptors for lifecycle callbacks
Interceptor bindings
Common annotations for the Java platform 1.2
Common annotation
SQL utilities
Web console for monitoring beans
Summary
Persistence
Common JPA annotations
Named queries
Relationships
Cascade on one-to-one and one-to-many
Cascading the one-to-one persist operation
Cascading the one-to-one merge operation
Cascading the one-to-one delete operation
The one-to-one delete orphan cascading operation
Cascade on Many To Many
Cascade of the persist many to many operation
Dissociation of one side in the many to many association
Tricks for many to many CascadeType.REMOVE
Conclusion
News from Java EE 7
Result set
Stored procedures
Converters
Named entity graphs
JPQL improvements
API Criteria bulk operations
Unsynchronized persistence context
Indexes
Packages and entities
DataSources and connectors
Deployment of the DataSource
DS file
XA and non XA
Activating the deployer
XML configuration
Web console
Summary
Implementing Business Logic
Scopes in EJB
Singleton
Local and remote interfaces
Remote clients
EJB client library
Remote naming project
Combining the remote naming project and EJB client library
Local and remote homes
The session context
Transactions
Exceptions
Transaction management annotation
Transaction attributes
Security
EJB container configuration
Session beans
Stateless
Stateful
Singleton
Entity beans
Remote
Thread pools
IIOP
In VM remote interface invocations
Summary
Working with Distributed Transactions
Transaction overview
BMT and CMT
Descriptor configuration
Remote transaction
Transactions and resource managers
ACID properties
Enterprise concurrent API
Managed executor service
Set of threads
Transactional tasks
Levels and transaction isolation problems
Isolation violations
Dirty read
Non-repeatable read
Phantom read
Isolation levels
Read committed
Read uncommitted
Repeatable read
Serializable
Transaction models
Flat transactions
Savepoints
Nested transactions
Saga
Chained transactions
Distributed transactions and the JTA
Distributed transaction scenarios
Multiple databases
Message queue and database
Multiple application servers
Transaction started by the client
Two-phase commit
Emulating two-phase commit
Summary
Creating REST Services
Services
REST and HTTP
GET methods
POST methods
PUT methods
HEAD methods
OPTIONS method
DELETE method
Using RESTEasy directly
REST application and components
Container components
Container request filter
Container Response Filter
Name binding
Providers
Client components
Client Request Filter
Client Response Filter
Interceptors
Reader interceptors
Writer interceptors
Features
Contracts
Dynamic features
Forms and beans
Selenium and Drone
Summary
Implementing WebSockets
History of the web
Implementation engine
A first basic example
WebSocket container
WebSocket session
Security
HTTPS
Security realm
Custom HTTPS configuration
WebSocket HTTPS connection
Negotiated subprotocols
Configurators for requests and responses
Request informations and parameters
Path parameters
Request parameters
Other features
Container configuration
Runtime configuration
Client WebSockets
Basic client
Async client
Message handlers
Whole
Partial
Custom message handler registration
Ajax versus WebSockets
Summary
Working with Messaging
Queues and topics
Queues
Creating the queue from the web console
Creating the queue using CLI and Maven WildFly plugin
Creating the queue through an Arquillian test case
Create the Java client for the queue
Topics
Creating the topic from the web console
Creating the topic with the Maven WildFly plugin
Creating the topic through an Arquillian test case
Creating the Java client for the topic
Remote clients
Message listeners
The JMS context
Summary
Implementing a Mail Client
Mail client API
Java example
Creating a client with Java SE
Configuration of the mail server
SMTP local mail server
Summary
Asynchronous REST
Asynchronous resources
REST timeouts
REST server callbacks
Connection callbacks
Asynchronous clients
Asynchronous client callbacks
Summary
Asynchronous EJB
The asynchronous annotation
Timers and schedulers
Timer service
File configuration
Timer configuration
Access timeout
Old specs compliant
Stateful timeout
Schedulers
Transactions and timers
Message driven beans
Message driven bean context
Acknowledge mode
Summary
Batches and Workflows
Workflows and BPM
Batch models
Chunks
Chunk and ETL
Chunk Reader
Chunk processor
Chunk writer
Client
Batchlets
Decision
Mail example
Client
Job context and step context
Metrics and step execution
Listeners
Job listener
Step listener
Chunk listener
Batch property
Checkpoint Algorithm
Checkpoint timeout
Exceptions
Monitoring of the batches
Deploying the workflows
Summary
Working with Servlets and JSP
Undertow
Servlets and web components
Ports and security
Request and response
Cookies
JSP pages
EL Expressions
Cookies operations
Web session and other scopes
Creation of a cookie
Cookies and JavaScript
Tests with Selenium
Error mappings
File configuration
File upload
Filters
HTTP servlet response wrapper
Event listeners
Session listener
Session ID listener
Servlet request listener
Servlet request attribute listener
Session attribute listener
Session binding listener
Session activation listener
Servlet context listener
Servlet context attribute listener
Asynchronous servlet
Non blocking I/O
Protocol handler
Dynamic context registration
External resources and themes
Web fragments
Security
File descriptor security
Programmatic security
Form login
Create a custom JAAS module
Summary
Writing a JSF Application
MVC
Components
Use
Structure
Configuring and developing your application
Internationalization
Navigation
Navigation inside the page
Phases and listeners
Working with Facelets
Web templates
Custom functions
Custom tags
Security
ACL permissions and PicketBox
Summary
Sharing the Web Sessions
Clustering
Infinispan
Distributable applications
Cluster domains
Customize the domains
Summary
WildFly in Cloud
OpenShift
WildFly installation
Command-line tools
Exposed services
Summary
Share your Data
Infinispan and the cluster
LRU and LIRS
JGroups configuration
Singleton HA Services
Writing the Service
Writing the Activator
Client for the Service
Summary
Deployment
Deployment types
Enterprise packages
Web archive
Java archive
EJB
Client application
Simple Java library
Resource adapters
Extension packages
Datasources
Service archives
Deployment tools
Administrator tools
HA deploy
Development tools
Summary
Working with OSGi
Modules
OSGi in WildFly
Installation
Deployment of bundles
Maven bundle plugin
Summary
- 高考英语历年真题核心高频688词汇(合肥新东方高考英语教研中心)
- 中国资本市场:重塑生态链(吴晓求 等)
- Desperate Sons(Standiford, Les)
- Daughters of the Puritans: A Group of Brief Biographies(Seth Curtis Beach)
- 大白鲸童话森林·樟树公寓的十二家房客(梅瑜)
- 物联网与智慧城市(邵泽华)
- 赢在思维——初中化学拉分题专项集训300题(9年级+中考)(彭嘉全)
- 家庭营养套餐(《健康餐桌》编委会编)
