60 likes | 195 Views
Java and the Web. CSE 3330 Southern Methodist University. Standard Model of the Web. Client. Web server. Internet. Basic Request/Response Model Client makes a request for a static resource Web server responds with the static resource HTTP is the standard protocol.
E N D
Java and the Web CSE 3330 Southern Methodist University
Standard Model of the Web Client Web server Internet • Basic Request/Response Model • Client makes a request for a static resource • Web server responds with the static resource • HTTP is the standard protocol
Generating Dynamic Content • Request can contain “parameters” / “key-value” pairs of information • Web server can use this data to generate dynamic content (Response) • Web server isn’t just serving up static content anymore • may be taking request params and accessing a database or other service to generate content for the user.
Anatomy of a Servlet • <TCHome>/webapps • TestServlet • WEB-INF • web.xml • classes • TestServlet.java • TestServlet.class
TestServlet.java public class TestServlet extends HttpServlet { public void doGet(HttpServletRequestreq, HttpServletResponse res) throws IOException, ServletException { res.setContentType("text/html"); PrintWriterout = res.getWriter(); /* Display some response to the user */ out.println("<html>"); out.println("<head>"); out.println("<title>TestServlet</title>"); out.println("</head>"); out.println("<body>"); //replace YourName below with your real name. out.println("<p>Hello There, YourName</p>"); out.println("</body></html>"); out.close(); } }
web.xml <?xml version="1.0"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <servlet> <servlet-name>TestServlet</servlet-name> <servlet-class>TestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/TestServlet</url-pattern> </servlet-mapping> </web-app>