13
Jul 3, 2022 introServlets.ppt Intro to servlets

20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Embed Size (px)

Citation preview

Page 1: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

Intro to servlets

Page 2: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

typical web page – source

<html><head>

<title>Hello</title></head><body>Hello</body></html>

<meta http-equiv=Content-Type content="text/html; charset=windows-1252">

<meta http-equiv=Content-Type content="text/html”>

Page 3: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

HTTP client-server model

web client(browser)

web server(Apache)

HTTP request

HTTP response

Page 4: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

HyperText Transport Protocol (HTTP)client-server scenario

• a web server is a program• plays the role of “server”• runs all the time but does nothing much

• listens on some TCP port until called• if called, formulates an answer and sends it to the client

• as a string (or stream or file)

• a web browser is a program• plays the role of “client”• runs if a user starts it• if the user instructs clicks something:

1. sends a URL to a web server2. waits to receive a plain text file from from web server3. formats (displays) the contents of the received file (string or stream)4. the three steps above may be repeated if the page contains images

• by file, string or stream, I mean:• a one-dimensional array of printable characters

Page 5: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

servlet URL

General form:http://serverName:port/contextName

Example:http://harborsparrow.com:80/hello

port

context

Typical: http://harborsparrow.com/hello

context

Page 6: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

Java web application

web client(browser)

HTTP request

HTTP response

web server (Apache)

1 = ServletContext object2 = HttpServletRequest object3 = HttpServletResponse object4 = HttpServlet object5 = web.xml file

2

3

4

1servlet

container(Tomcat)

5

Page 7: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

Java web application

web client(browser)

HTTP request

HTTP response

web server (Apache)

1 = ServletContext object2 = HttpServletRequest object3 = HttpServletResponse object4 = HttpServlet object5 = web.xml file

2

3

4

1servlet

container(Tomcat)

5

Page 8: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

Java web application that calls across the network to something else

web client(browser)

HTTP request

HTTP response

web server (Apache)

1 = ServletContext object2 = HttpServletRequest object3 = HttpServletResponse object4 = HttpServlet object5 = web.xml file

2

3

4

1servlet

container(Tomcat)

5

remote computer(database or other)

Page 9: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

Hello servlet

Page 10: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

code

public class Hello extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>"); out.println("Hello"); out.println("</title>"); out.println("</head>"); out.println("<body>"); out.println("Hello"); out.println("</body>"); out.println("</html>");

} /* end doPost */

public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { doPost(request,response); } /* end doGet */

} // end class

Page 11: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

web.xml (deployment descriptor) for Tomcat

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">

<servlet> <servlet-name>Hello</servlet-name> <servlet-class>Hello</servlet-class> </servlet>

<servlet-mapping> <servlet-name>Hello</servlet-name> <url-pattern>/servlet/Hello</url-pattern> </servlet-mapping>

</web-app>

Page 12: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

directory structure for Tomcat

Page 13: 20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello

Apr 20, 2023 introServlets.ppt

the end of this PowerPoint file

Hooray!