PLU | Java Fundamentals: The Java Reflection API Method Handles (2019 EN)

Discussion in 'Programming' started by Kanka, Nov 25, 2019.

  1. Kanka

    Kanka Well-Known Member Loyal User

    Messages:
    16,076
    Likes Received:
    449
    Trophy Points:
    83
    [​IMG]

    Company: Pluralsight
    Author: Jose Paumard
    Full Title: Java Fundamentals: The Java Reflection API Method Handles
    Year: 2019
    Language: English
    Genre: Educational: Programming
    Skill Level: Intermediate
    Price: -
    -
    Files: MP4
    Time: 03:10:01
    Video: AVC, 1280 x 720 (1.778) at 30.000 fps, 150 kbps
    Audio: AAC at 93 Kbps, 2 channels, 44.1 KHz



    The Reflection API brings class and object introspection to Java, on top of which Spring and Hibernate are built. This course covers object creation, field modification, and method invocation, as well as Method and Var handles for improved performances.

    As a Java developer, mastering the reflection API allows you to build powerful frameworks that will bring advanced functionalities to your application. In this course, Java Fundamentals: The Java Reflection API Method Handles, you will learn how you can use reflection API efficiently. This API is very technical, so this course is organized around the study of two real-life use cases: the building of an Object Relational Mapper, on the model of Hibernate, and the creation of a dependency injection framework, on the model of Spring. First, you will understand how to introspect classes and objects and how to discover their structure. Next, you will learn how to build objects without knowing their class at compile time, to set values to their fields and to invoke their methods. Finally, you will understand the performance issues of this API, and be able to use method handles and var handles to fix these issues. By the end of this course, you will be able to master the reflection API that will help you in creating performant and versatile Java applications.


    Lessons:
    1. Course Overview
    01. Course Overview
    2. Introducing Java Reflection
    02. Introduction to the Course, What Are You Going to Learn?
    03. Who Are You? What Should You Know to Follow This Course?
    04. Agenda of the Course
    05. Agenda of This Module
    06. Introducing the Java Reflection API: Class, Field, and Method
    07. Introducing the Class Named Class, Getting an Instance of Class
    08. Getting a Class Instance Using the Object.getClass() Method
    09. Getting a Class Instance from the Name of the Class
    10. Wrapping up the Three Patterns to Get a Class Object
    11. Getting the Super Class and the Implemented Interfaces of a Class
    12. Getting the Declared and Non Declared Fields of a Class
    13. Getting the Methods and the Constructors of a Class
    14. Reading the Modifier to Tell if a Class Member Is Public
    15. Demo: Using the Reflection API to Read Fields and Methods
    16. Module Wrap Up
    2. Creating an Object Metamodel Using Annotations and Reflection
    17. Introduction to the Module and Agenda
    18. Introducing the Mapping of Objects to Databases, XML, and JSON
    19. Creating a Metamodel by Adding Annotations to Fields
    20. Using the Reflection API to Read and Write a Field of an Object
    21. Making a Field Accessible to Reading from Outside its Class
    22. Designing an EntityManager for Reading and Writing to a Database
    23. Demo: Designing a Generic Metamodel
    24. Demo: Adding Application Specific Annotations to a Bean
    25. Demo: Setting the Retention Policy of an Annotation
    26. Demo: Implementing the Generic Metamodel
    27. Demo: Running the Generic Metamodel
    28. Module Wrap Up
    3. Creating an Object Relational Mapper Using an Object Metamodel
    29. Introduction to the Module and Agenda
    30. Introducing the Database Server and the Person Bean
    31. Demo: Setting up the Project and Its Dependencies
    32. Demo: Runnning the H2 Server and Launching SQL Requests
    33. Demo: Writing the Pattern to Create and Persist Person Instances
    34. Demo: Creating and Implementing the EntityManager Interface
    35. Demo: Building the SQL Query to Insert a Person Bean
    36. Demo: Preparing the Statement to Execute the Query
    37. Demo: Setting the Primary Key Value to the Insert Statement
    38. Demo: Setting the Field Values to the Statement
    39. Demo: Running the EntityManager to Persist Person Instances
    40. Demo: Creating the Find Pattern and the Select Query
    41. Demo: Setting the Primary Key Value to the Select Statement
    42. Demo: Creating an Instance of the Object Read from the Database
    43. Demo: Setting the Primary Key Value to the Object
    44. Demo: Setting the Column Values and Reading the Objects
    45. Demo: Creating an EntityManager Specific to a Database
    46. Demo: Closing Properly the PreparedStatement and ResultSet
    47. Demo: Specifying the Mapping through the Annotations
    48. Module Wrap Up
    4. Injecting Dependencies in an Object Using an Object Metamodel
    49. Introduction to the Module and Agenda
    50. Applying Dependency Inversion Using Dependency Injection
    51. Designing an EntityManager Independent of the Database
    52. Designing a BeanManager to Perform Dependency Injection
    53. Getting and Invoking Methods Using the Reflection API
    54. Demo: Preparing the Project for Dependency Injection
    55. Demo: Updating the EntityManager with Dependency Injection
    56. Demo: Creating the BeanManager to Create the EntityManager
    57. Demo: Associating Types to Creation Recipes in the BeanManager
    58. Demo: Injecting the Connection Value to Provide the EntityManager
    59. Module Wrap Up
    5. Improving Performance Using Method Handles
    60. Introduction to the Module and Agenda
    61. Spotting Security Checks While Calling Reflection Code
    62. Introducing MethodHandles VarHandle and the Lookup Object
    63. Getting a Private Trusted Lookup Object
    64. Using a Method Handle to Get a Reference on a Class
    65. Creating MethodType Object to Get a Reference on a Method
    66. Getting a Method Handle on a Method or a Constructor
    67. Getting a Method Handle to Read and Write a Field
    68. Using a Method Handle to Invoke a Method of a Class
    69. Accessing Public and Private Fields Using Method Handles
    70. Adding Concurrent Field Access Using the VarHandle API
    71. Using VarHandle to Gain Concurrent Access to Fields
    72. Demo: Creating Person Beans Using Method Handles on Constructors
    73. Demo: Invoking Methods Using Method Handles
    74. Demo: Reading and Writing Private Fields Using Method Handles
    75. Course Wrap Up


    -------------
     
    Last edited by a moderator: Dec 2, 2019