"The best developers of the future will have a deep appreciation for the fundamentals that make great software possible, and also deeply enjoy the craft of development. This book, built on Professor Isidro's beliefs of the importance of fundamentals and on having fun developing software, gives you both."
- Bruno Souza
Free with your book: DRM-free PDF version + access to Packt's next-gen Reader*
Key Features:
- Build a multithreaded HTTP server and application container using Java sockets
- Understand and replicate the internal mechanics of Tomcat and Jakarta EE, and Spring features
- Develop a modular Java framework with annotation-based routing and dependency injection
- Purchase of the print or Kindle book includes a free PDF eBook
Book Description:
Ever wondered how web servers like Tomcat process requests, or what really happens behind frameworks such as Spring? This book takes you beneath the surface of Java web development to uncover the why behind the tools you use every day. Rather than focusing solely on coding recipes, this book emphasizes the underlying concepts and design principles that govern how web servers and frameworks operate.
Starting with low-level socket programming, you'll build a multithreaded HTTP server from the ground up and extend it into a lightweight application server capable of handling dynamic content.
Along the way, you'll master HTTP request parsing, response generation, servlet-like request handling, and Java reflection and annotations for metaprogramming. As you progress, you'll evolve this infrastructure into your own Java framework with embedded Tomcat, annotation-driven routing, object serialization with Jackson, and basic dependency injection modeled on Jakarta CDI.
By the end of this journey, you'll understand the principles behind them, enabling you to reason about system design, troubleshoot complex issues, and apply these concepts across frameworks and programming languages.
*Email sign-up and proof of purchase required
What You Will Learn:
- Implement a multithreaded web server using Java sockets
- Decode and construct HTTP requests and responses manually
- Build an application container to serve dynamic Java classes
- Serialize and deserialize JSON data using Jackson
- Structure projects with modular static and dynamic content
- Replicate the internal mechanics of Tomcat, Jakarta EE, and Spring features
- Manage lightweight session handling and routing logic
- Create and deploy a complete custom Java web framework
Who this book is for:
Java developers, computer science students, and educators seeking a deep, hands-on understanding of web server internals and application framework design. Prior knowledge of Java and basic networking concepts is recommended.
Table of Contents
- Networks, Protocols, and Packets
- Workings of a Web Server - A Case Study
- Implementing a Simple Web Server
- Web Servers vs Application Servers
- Deep Dive into Simple Web Container Implementation
- Simple Web Container Improvements and Expansions
- Why Create a Web Framework
- Web Frameworks - The Necessary Abstraction for Professional Development
- Detailing the SimpleWebFramework Implementation
- The Emergence of Dependency Injection and Its Application in SimpleWebFramework
- Creating the First Application with SimpleWebFramework
外文書商品之書封,為出版社提供之樣本。實際出貨商品,以出版社所提供之現有版本為主。部份書籍,因出版社供應狀況特殊,匯率將依實際狀況做調整。
無庫存之商品,在您完成訂單程序之後,將以空運的方式為你下單調貨。為了縮短等待的時間,建議您將外文書與其他商品分開下單,以獲得最快的取貨速度,平均調貨時間為1~2個月。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。