Metaprogramming is the dirty little secret behind the success of many Java frameworks such as Spring and Struts2, and forms the backbone of many of the most fundamental APIs across the JEE technology stack. This JAXconf session from Abdel Remani aims to introduce the topic and highlight, with code examples, the different mechanisms and techniques to take advantage of this underused feature of the Java Programming Language. This session combines the philosophy and theory behind metaprogramming with concrete code examples, but also goes through real-life scenarios to highlight the benefits of this technique such as minimizing the number of lines of code, reduced development time, and greater flexibility. Design patterns and best practices will be picked up along the way.
Recorded in front of a live JAXconf Audience