University of OXford & University of camBRiDGE

...is a collective term for characteristics that the two institutions share.

Learning Java 9 - Databases and Multithreading in Java

Published by: Packt
May 2018

Lecture Size: 06x50
Length: -2 hrs
Lecture Date: 10/2018

Lecture Link: https://www.safaribooksonline.com/
https://www.packtpub.com

| Comfortably build parallel applications in Java 9

| About This Video

|     Use next-generation NOSQL databases and understand their
| typical uses and patterns in Java 9
|     Take a close look at the Java 9 APIs and their impact on
| concurrency
|     Practical examples on thread safety, high-performance classes,
| safe sharing, and a whole lot more

| In Detail

| Java programs can perform many actions in parallel, with each
| action being performed by a separate process known as a thread. A
| multi-threaded program might perform database access using one
| thread while another thread handles the display. Multithreading is
| a very powerful feature of the Java language. The downside to
| writing a multithreaded program is the additional complexity of
| dealing with the thread model. To solve this, we will start by
| examining the different types of databases available and the
| benefits of each type, along with a few simple examples. We will
| learn how to work with simple database operations in Java,
| including a hands-on example in which we start by processing a
| JSON file containing vehicle information, before persisting those
| vehicle objects to a database.

| Moving along, we will expand on our example to process a JSON text
| file containing data, before persisting those objects to a MySQL
| database, leveraging the Hibernate framework. Finally, we will
| learn some of the basics of concurrency in Java, before we jump
| into a real-life example. We will look at how we can accelerate
| processing a large list of data, assuming the time to process each
| element of the list is expensive. We will look at some crucial
| techniques and caveats to be aware of in Java, with a hands-on
| example of how processes can lock or not be thread-safe when
| threading issues are incorrectly considered. We will expand our
| example to look at how we can accelerate our file processing and
| data manipulation by leveraging Java's multithreading
| functionalities. This will include a discussion on thread safety,
| and some of the steps a developer must take to ensure multi-
| threaded applications do not encounter problems. Threads ensure
| users are not blocked as they are independent and can perform
| multiple operations at the same time. Also threads help your
| application to run smoothly, and make tasks easier to perform.

| Taking this course will show you exactly how to write programs so
| multiple activities can proceed concurrently in the same program,
| making optimal use of the available resources, especially when
| your computer has multiple CPUs.