Java: Enterprise App Development with Java 9: 4-in-1
- 9 hours on-demand video
- 1 downloadable resource
- Full lifetime access
- Access on mobile and TV
- Certificate of Completion
Get your team access to 4,000+ top Udemy courses anytime, anywhere.Try Udemy for Business
- Create efficient lock-free programs that leverage the multi-core architecture of the CPU using Java 9’s features
- Gain practical experience of Java 9, including modules, the Streams API, the Collections API, multi-level JARs and HTTP/2 clients.
- Build real enterprise Java applications including a website and a microservice
- Building APIs for the connected web
- Build a simple music streaming service
- Learn about enterprise Java (JEE 8), including JSF, JPA, and CDI
- Use the Reactive programming model to create efficient programs
Which data structures does Java come with that we can use to store series of objects? Also, what is the difference between the various data structures?
- Discuss lists and arrays – and the difference between them
- Discuss the difference between typed versus untyped structures
- Use the new concepts to improve the code
How can we enhance the existing structure of the application to enable answering more complex queries about the stored music?
- To enhance the application, we need to improve the design diagram
- Understand the new requirements
- Improve the code by double-linking the classes
How can we use the concepts we learned to store the songs that a given user has listened to and allow querying from a user’s perspective?
- Understand how the new requirement adds value to the application
- Look into the updated design diagram
- Code the new classes and link them to the existing code
How can we design a command-line user-facing interface to allow anyone to input data and interact with the application?
- Understand what a CLI application is
- Design how the user interaction must happen
- Reuse existing code to create a CLI user interface
In this video, we will be reviewing security and other JVM and runtime enhancements.
- Discuss support for SHA-3, deprecation of SHA-1, and the new JVMI interface, ahead of time compilation and some other smaller new features.
- Study enhanced support for DTLS
- Discuss security and other features
In this video, we will go through the important points covered in this section.
- You learned what the optimistic locking and pessimistic locking are
- You used the CAS structures from java.util.concurrent
- You created reactive application using Java 9 Reactive Streams
In this video, we will see how Open Liberty Application Server is downloaded and then installed to the software directory. It is then configured under eclipse together with the Open Liberty plugins.
- Download Open Liberty Application Server and unzip to software directory
- Install Open Liberty and plugin under Eclipse
- Startup Open Liberty
This section provides an overview of the application that we are building. It covers use cases, screen flow, and the entity model. It ends with considering the applications limitations.
- Discuss use cases
- Discuss screen flow and entity model
- See the limitations of the application
In this video, the JSF lifecycle is introduced along with PrimeFaces facelets. It concludes with looking at how to use these facelets to develop our application.
- Learn about JSF lifecycle and PrimeFaces
- Code PrimeFaces data table facelets and backing beans
- Deploy to Open Liberty
This video develops a healthcheck microservice. It discusses why diagnostic healthcheck services are important and look at the Java 9 Process API.
- Discuss healthcheck microservices and Process API
- Develop healthcheck microservice, and create two GET methods
- Test implementation on Open Liberty application server
- Prior programming experience of Java is assumed.
A lot of applications built today need to handle huge amounts of traffic in low latency. Java is a very popular language and JVM is a popular platform to build high performance programs in Java. Writing high-performance concurrent and thread-safe programs is hard, but you’ll discover how and see what Java 9 adds to the software engineer toolkit.
Java 9 comes with a rich feature set. It intends to change the way Java developers used to write code. It introduces a modular JDK so that developers can only include the modules that they need. The prospect of being one of the first to explore the brand new JDK from Java is the primary motivator. Also, this is the biggest change been introduced in Java for a while.
This comprehensive 4-in-1 course will set you on the path to become a skilled and professional Java developer by exploring Java 9 and Java EE 8 and learning how these technologies can be used to create a modern, scalable enterprise application. Comprehensive and detailed, the easy to follow tutorial will take viewers on a journey to going from zero to hero Java programmers with the new Java 9 SDK.
Contents and Overview
This training program includes 4 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Java 9 Core Principles, covers exciting real-world examples with Java. As you progress in your journey, you will encounter more advanced topics including functional data processing, before investigating how you can build fast, scalable APIs for the connected web. In the final section, you will build an API to analyze the sentiment of sentences provided by the user, along with various statistics about your API.
The second course, Java 9 New Features Deep Dive, covers new modular programming concept in Java 9 and know how it will affect you and your clients ahead of time.We will start up with the setting up of Java 9 and learn the modularization concepts and then proceed to deployment. This should be hands on look at Java 9, but no one will be using it to make real-world applications yet. This is an assessment video for the millions of Java developers out there looking to put it to the test.
The third course, Writing High Performance Java Application in Java 9, covers how to monitor applications and write code in high concurrent with the proper tools. First, we’ll create efficient lock-free programs that leverage the multi-core architecture of the CPU using the newest Java 9 features. Then you’ll see how Java Memory Model affects the performance of your programs. You’ll discover why it’s even more important to be aware of the software-hardware co-operation of your programs in Java 9. Moving on, you’ll find out how to leverage constructs from JAVA 9 java.util.concurrent to create efficient multi-threaded programs. We’ll explore the different kinds of locking available in JAVA 9 and get to know when you should use which kind of locks. Finally, you’ll see what tools are shipped with the JDK 9 and know how to use them properly.
The fourth course, Hands-On Enterprise Application Development with Java 9, covers modern and scalable enterprise applications using Java 9 and Java EE 8 and become a professional Java developer. We will use case studies to explore how we can use the JEE8 technologies of JSF, EJB, and JPA to build a database-driven website, while all the time working with new Java 9 constructs. You'll learn how to extract a component from our website as a standalone microservice and decouple your microservice to allow it to be reused within an organization. We will then delve into Java 9 technologies such as JShell, modules, the Streams API, Multi-Jar, Process APIs, and HTTP/2 clients.
By the end of the course, you’ll get up and running with Java with exciting real-world examples to monitor applications and write code in high concurrent with the proper tools leveraging Java Concurrency.
About the Authors
Colibri is a technology consultancy company founded in 2015 by James Cross and Ingrid Funie. The company works to help its clients navigate the rapidly changing and complex world of emerging technologies, with deep expertise in areas such as big data, data science, machine learning, and cloud computing. Over the past few years they have worked with some of the World's largest and most prestigious companies, including a tier-1 investment bank, a leading management consultancy group, and one of the world's most popular soft drinks companies, helping all of them make better sense of their data and process it in more intelligent ways. The company lives by its motto: Data -> Intelligence -> Action. Andrei Ruse, our Author, is currently working with Colibri Ltd, has been working as a software developer in the financial service industry for over 3 years, and has over 6 years' experience with Java as the main programming language, both academically and professionally. Prior to his current role in a FinTech startup in London, he spent three years working for one of the World's largest investment banks, having joined it straight after graduating from Manchester University with a degree in Computer Science.
Peter Verhas is a senior developer and software system architect with more than 30 years' software development experience. He currently works for EPAM as a senior developer, where he is involved in many customer projects and actively participates in the educational activities of the company. Peter writes a technical blog and is committed to open source software development. He has been using Java since 2005 and is also an author at Java Code Geeks.
Tomasz Lelek is a Software Engineer who programs mostly in Java and Scala. He is a fan of microservice architectures and functional programming. He dedicates considerable time and effort to be better every day. Recently, he's been delving into big data technologies such as Apache Spark and Hadoop. He is passionate about nearly everything associated with software development. Tomasz thinks that we should always try to consider different solutions and approaches to solving a problem. Recently, he was a speaker at several conferences in Poland - Confitura and JDD (Java Developer's Day) and also at Krakow Scala User Group. He also conducted a live coding session at Geecon Conference. He is currently working on this website using ML
Martin Farrell is an independent Java consultant and trainer based in Edinburgh, UK, with over 18 years' Java experience. He has consulted across a range of businesses from banking to telecommunications and Silicon Valley start-ups. He also blogs about Java and Spring technologies on the popular javabullets blog, and is Most Valuable Blogger at dzone and a contributor to When not consulting, Martin likes to spend time with his wife and two children. He is also a keen cyclist and triathlete.
- Developers looking to get started with programming in Java, or looking to learn what’s new to the language in Java 9.
- Software engineers with professional experience in Java who want to create very efficient and high-performance applications in Java 9.
- Programmers who want to take their knowledge of Java to the next level by learning to build enterprise-level applications using Java 9 and its new features.