The object oriented Proxy Design Pattern is a structural design pattern which is concerned with how classes and objects compose to form larger structures. The proxy design pattern in java takes a similar approach by providing a proxy object that acts as a placeholder for another object. Commonly a proxy is a class that functions as an interface to something else. The proxy design pattern can be best understood with the help of a real-world example. In computer networks, we usually come across the term proxy server. It is a server application that acts as an intermediary for web requests from the clients. The client, instead of connecting directly to a server, directs its request to the proxy server which performs the intended filtration and other network transaction. The purpose of proxy server is to simplify and control the complexity of the requests by providing additional benefits such as privacy and security. Proxies have been designed to add structure and encapsulation to distributed systems in computer networks.
The Proxy Design Pattern has the same intent has the proxy servers in computer networks. In this article we will define what is proxy design pattern, walk through the implementation and also see what are the benefits of using the proxy design pattern in java.
Full Article Source: What is Proxy Design Pattern