X Tutup
Skip to content

Commit 3fc25a2

Browse files
committed
iluwatar#90 Added pattern description to README.md
1 parent 6002155 commit 3fc25a2

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

README.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ Presentation Tier patterns are the top-most level of the application, this is co
7979
* [Model-View-Controller](#model-view-controller)
8080
* [Model-View-Presenter](#model-view-presenter)
8181
* [Flux](#flux)
82+
* [Front Controller](#front-controller)
8283

8384
### Architectural Patterns
8485

@@ -656,6 +657,19 @@ validation and for building to order
656657
**Real world examples:**
657658
* [Apache Isis](https://isis.apache.org/)
658659

660+
## <a name="front-controller">Front Controller</a> [&#8593;](#list-of-design-patterns)
661+
**Intent:** Introduce a common handler for all requests for a web site. This way we can encapsulate common functionality such as security, internationalization, routing and logging in a single place.
662+
663+
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/front-controller/etc/front-controller.png "Front Controller")
664+
665+
**Applicability:** Use the Front Controller pattern when
666+
* you want to encapsulate common request handling functionality in single place
667+
* you want to implements dynamic request handling i.e. change routing without modifying code
668+
* make web server configution portable, you only need to register the handler web server specific way
669+
670+
**Real world examples:**
671+
* [Apache Struts](https://struts.apache.org/)
672+
659673

660674

661675
# Frequently asked questions

0 commit comments

Comments
 (0)
X Tutup