viii Contents
The Bookstore Application ����������������������������������������������������������������������������������������������������������� 19
Data Model for the Bookstore Application ����������������������������������������������������������������������������������� 20
Data Access Layer for the Bookstore Application ������������������������������������������������������������������������������������������������ 25
Client for the Data Access Layer ������������������������������������������������������������������������������������������������������������������������� 33
Trends and Technologies in the Java Web Landscape����������������������������������������������������������������� 35
Responsive Web Applications ������������������������������������������������������������������������������������������������������������������������������ 35
Single-Page Web Application (SPA) ��������������������������������������������������������������������������������������������������������������������� 38
Real-Time Web Application ���������������������������������������������������������������������������������������������������������������������������������� 38
Reactive Web Application ������������������������������������������������������������������������������������������������������������������������������������ 39
Mashups and Web Services ��������������������������������������������������������������������������������������������������������������������������������� 39
Semantic Web (Web 3�0) �������������������������������������������������������������������������������������������������������������������������������������� 41
Summary ������������������������������������������������������������������������������������������������������������������������������������� 41
■ Chapter 2: Building Web Applications Using Servlets and JSP ��������������������������������������� 43
Servlets ��������������������������������������������������������������������������������������������������������������������������������������� 45
Your First Web Application Using a Servlet ��������������������������������������������������������������������������������������������������������� 47
ServletContext and ServletConfig ����������������������������������������������������������������������������������������������������������������������� 62
RequestDispatcher ���������������������������������������������������������������������������������������������������������������������������������������������� 64
Filters ������������������������������������������������������������������������������������������������������������������������������������������������������������������ 65
Configuring Servlet via Annotations �������������������������������������������������������������������������������������������������������������������� 67
Java Server Pages ����������������������������������������������������������������������������������������������������������������������� 71
Your First Web Application Using JSP ����������������������������������������������������������������������������������������������������������������� 71
JSP Basics ����������������������������������������������������������������������������������������������������������������������������������������������������������� 75
The MVC Pattern �������������������������������������������������������������������������������������������������������������������������� 86
Bookstore Application ����������������������������������������������������������������������������������������������������������������� 87
Home Page ���������������������������������������������������������������������������������������������������������������������������������������������������������� 88
Listing All the Books �������������������������������������������������������������������������������������������������������������������������������������������� 94
Searching the Books by Category ����������������������������������������������������������������������������������������������������������������������� 96
Searching the Books by Keyword ����������������������������������������������������������������������������������������������������������������������� 98
Summary ���������������������������������������������������������������������������������������������������������������������������������� 103