Register   Login   About   Study   Enterprise   Share
AI / Internet Technology University (AITU)
Fast Login - available after registration







|

Top Links: >> 80. Technology >> Internet Technology Summit Program
Current Topic: 4. Web Apps Frameworks
Sub-Topics: 4.1. Web Application Architecture and Design | 4.2. HTML 5, CSS, Java Script, jQuery, Angular JS, and REACT | 4.3. Servlets and Java Server Pages | 4.4. Spring with Apache Maven and Data Service Frameworks | 4.5. Web Services | 4.6.Web Services Security | 4.7. Test JSP and Servlets | 4.8. Web Projects
-- Scroll to check for more content below...
You have a privilege to create a quiz (QnA) related to this subject and obtain creativity score...
This chapter includes basic knowledge of architecture, design, and development of web applications with several specific frameworks.

4.1. Web Applications Architecture


4.2 Html, JavaScript, jQuery and AngularJS
HTML 5 - for desktop and mobile devices
JavaScript - dynamic engine of web pages

Web application frameworks - AngularJS - http://www.w3schools.com/angular/

Learn to Build Modern Web Apps with MEAN - MongoDB, ExpressJS, AngilarJS, NodeJS

4.3. JSP and Servlets

4.4. Spring and Data Service Frameworks
http://www.tutorialspoint.com/spring/
https://spring.io/guides

4.5. Web Services

4.6. System Security and Web Services Security

4.7. Web Test

4.8. Web Projects
-----------------------


I am sure you know that Web is the biggest branch of the Internet tree.
World Wide Web (WWW) is based on a mutual agreement between the major vendors. On one side - server side – the vendors who create server applications called Web servers or application servers. The other side – client side – the vendors who create client applications called Web browsers.

The agreement consists of two parts.
- Hypertext Transfer Protocol (HTTP) instructs vendors to use extra headers over the standard TCP/IP communications. (By the way, what do you remember about the standard TCP/IP structure? And what kind of extra HTTP headers do you remember? And what are their main purpose?)
- Hypertext Markup Language (HTML) instructs vendors how to express visual, sound, and text data on the web pages.

Here is an example of HTTP Request with HTTP headers sent by a browser to a web server, JavaSchool.com.


GET /about/publications.html/ HTTP/1.1
Host: javaschool.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: JSSESSIONID=bcdajq435r4q7ib3vtdjq120
Pragma: no-cache
Cache-Control: no-cache


Several comments related to this request:

User-Agent is a good indication of the device which sent the request. If the request has been sent by a mobile device, there would be the keyword Mobile.
Was it clear so far?

Cookie collects all cookies that was previously set to a client device by responses from the same server. There might be several lines of cookies, each with its own name (key) and a corresponding value. This is the way for vendors to collect some basic data about you on your own machine. Cookies size is limited to 4096 bytes. User can disallow storing cookies, but you do not want to do this because big vendors, such as Google, Yahoo, and more rely on cookies.

As you might already understood, cookies are small files that browser can store on a client device. (Yes, cookies can be stored on mobile devices, although more limitations applied there.) Browser does it on the order from a server setCookie under the condition that browser setting allows cookies.

How the response from a server to a browser will look like?


HTTP/1.x 200 OK
Date: Fri, 22 May 2015 10:32:25 MST
Server: Apache Tomcat/7.0.55 (HTTP 1.1. Connector)
Connection: close
Pragma: public
Expires: Fri, 22 May 2015 11:32:25 MST
Cache-Control: max-age=3600, public
Content-Type: text/html; charset=UTF-8
Last-Modified: Fri, 22 May 2015 10:05:45 MST
X-Pingback: http://ITUniversity.us/about/publications.html
Vary: Accept-Encoding, Cookie, User-Agent





Java Training Publications from ITS, Inc.


Content of the document with HTML 5 tags......





The response also deserves several comments.

HTTP/1.x 200 OK
This line with the code=200 is indication that the web page (target) was successfully found.

The most common error codes are:

HTTP 404 – Page not found
Or
HTTP 503 – Server error, when the target is not permitted for direct public access

Note that after HTTP headers are followed by the web page with HTML tags (keywords).
I believe you have a good idea about HTTP and it is about time to look at the Web Applications from above, from the architecture perspectives.

Then we will come back to the Earth, we will learn HTML 5, which is the latest standard for web pages on desktops and mobile devices.
We will learn Java Script to make our web pages more dynamic.

We plan to learn creating one-page applications with AngularJS, a very popular library, which greatly simplifies creating dynamic web pages.
And we will learn the major frameworks based on Java Servlets and Java Server Pages (JSP). These frameworks will allow you creating complex applications on the server side to collect and process data.

Multiple client devices can benefit from these intelligent applications. We will learn mobile applications later in the next chapter.


| Check Your Progress | Propose QnA | Have a question or comments for open discussion?
<br/>GET /about/publications.html/ HTTP/1.1
<br/>Host: javaschool.com
<br/>User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729)
<br/>Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
<br/>Accept-Language: en-us,en;q=0.5
<br/>Accept-Encoding: gzip,deflate
<br/>Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
<br/>Keep-Alive: 300
<br/>Connection: keep-alive
<br/>Cookie: JSSESSIONID=bcdajq435r4q7ib3vtdjq120
<br/>Pragma: no-cache
<br/>Cache-Control: no-cache
<br/>


Several comments related to this request:

User-Agent is a good indication of the device which sent the request. If the request has been sent by a mobile device, there would be the keyword Mobile.





Was it clear so far?


Cookie collects all cookies that was previously set to a client device by responses from the same server. There might be several lines of cookies, each with its own name (key) and a corresponding value. This is the way for vendors to collect some basic data about you on your own machine. Cookies size is limited to 4096 bytes. User can disallow storing cookies, but you do not want to do this because big vendors, such as Google, Yahoo, and more rely on cookies.

As you might already understood, cookies are small files that browser can store on a client device. (Yes, cookies can be stored on mobile devices, although more limitations applied there.) Browser does it on the order from a server setCookie under the condition that browser setting allows cookies.

How the response from a server to a browser will look like?

<br/>HTTP/1.x 200 OK
<br/>Date: Fri, 22 May 2015 10:32:25 MST
<br/>Server: Apache Tomcat/7.0.55 (HTTP 1.1. Connector)
<br/>Connection: close
<br/>Pragma: public
<br/>Expires: Fri, 22 May 2015 11:32:25 MST
<br/>Cache-Control: max-age=3600, public
<br/>Content-Type: text/html; charset=UTF-8
<br/>Last-Modified: Fri, 22 May 2015 10:05:45 MST
<br/>X-Pingback: http://ITUniversity.us/about/publications.html
<br/>Vary: Accept-Encoding, Cookie, User-Agent
<br/>
<br/><!DOCTYPE html>
<br/><html>
<br/><head>
<br/><meta charset="UTF-8">
<br/><title> Java Training Publications from ITS, Inc.</title>
<br/></head>
<br/><body>
<br/>Content of the document with HTML 5 tags......
<br/></body>
<br/>
<br/></html>
<br/>


The response also deserves several comments.

HTTP/1.x 200 OK
This line with the code=200 is indication that the web page (target) was successfully found.

The most common error codes are:

HTTP 404 – Page not found
Or
HTTP 503 – Server error, when the target is not permitted for direct public access

Note that after HTTP headers are followed by the web page with HTML tags (keywords).
I believe you have a good idea about HTTP and it is about time to look at the Web Applications from above, from the architecture perspectives.

Then we will come back to the Earth, we will learn HTML 5, which is the latest standard for web pages on desktops and mobile devices.
We will learn Java Script to make our web pages more dynamic.

We plan to learn creating one-page applications with AngularJS, a very popular library, which greatly simplifies creating dynamic web pages.
And we will learn the major frameworks based on Java Servlets and Java Server Pages (JSP). These frameworks will allow you creating complex applications on the server side to collect and process data.

Multiple client devices can benefit from these intelligent applications. We will learn mobile applications later in the next chapter.



| Check Your Progress | Propose QnA | Have a question or comments for open discussion?

Have a suggestion? - shoot an email
Looking for something special? - Talk to me
Read: IT of the future: AI and Semantic Cloud Architecture | Fixing Education
Do you want to move from theory to practice and become a magician? Learn and work with us at Internet Technology University (ITU) - JavaSchool.com.

Technology that we offer and How this works: English | Spanish | Russian | French

Internet Technology University | JavaSchool.com | Copyrights © Since 1997 | All Rights Reserved
Patents: US10956676, US7032006, US7774751, US7966093, US8051026, US8863234
Including conversational semantic decision support systems (CSDS) and bringing us closer to The message from 2040
Privacy Policy