Presentation is loading. Please wait.

Presentation is loading. Please wait.

JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.

Similar presentations


Presentation on theme: "JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming."— Presentation transcript:

1 JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming

2 Overview  Introduction to JSP  Understanding the need for JSP  Evaluating the benefits of JSP  Installing JSP Files  JSP Scripting Elements  JSP Expressions  JSP Scriplets  JSP Declarations  JSP Page Directive  Understanding the purpose of the page directive  Designating which classes are imported  Specifying the MIME type of the page

3 Introduction to JSP  Java Server Pages (JSP) technology enables you to mix regular, static HTML with dynamically generated content. OrderConfirmation.jsp

4 Introduction to JSP  Dynamic Pages can change in response to different context or conditions. HTTP request parameters used as dynamic content

5 Servlets vs. JSP  Servlets are good for data processing while JSP is good for presentation.  Benefits of JSP  It is easier to write and maintain the HTML  You can use standard Web-site development tools  You can divide up your development team

6 Reading 3 Parameters (Example) SERVLET HTML code in JAVA JSP JAVA code in HTML ThreeParams.javaThreeParams.jsp

7 Reading 3 Parameters (Example)

8 Servlets vs. JSP  JSP doesn’t provide any capabilities that couldn’t be accomplished with Servlets.  JSP documents are automatically translated into servlets behind the scenes.  The issue is not the power of the technology, it is the convenience, productivity, and maintainability of one or the other.  Choose the right tool for the job.

9 Installation of JSP files JSP Directories for Tomcat  Main Location: tomcat_install_dir/webapps/ROOT  Corresponding URL: http://localhost:8080/SomeFile.jsp  More Specific Location (Arbitrary Subdirectory): tomcat_install_dir/webapps/ROOT/SomeDirectory  Corresponding URL: http://localhost:8080/SomeDirectory/SomeFile.jsp

10 Types of JSP Scripting Elements  Expressions of the form, which are evaluated and inserted into the servlet’s output.  Scriptlets of the form, which are inserted into the servlet’s _jspService method (called by service).  Declarations of the form, which are inserted into the body of the servlet class, outside any existing methods.

11 Using JSP Expressions A JSP expression is used to insert values directly into the output. It has the following form: Example: Current time:

12 Predefined Variables  request, the HttpServletRequest.  response, the HttpServletResponse.  session, the HttpSession associated with the request (unless disabled with the session attribute of the page directive  out, the Writer (a buffered version of type JspWriter) used to send output to the client.  application, the ServletContext. This is a data structure shared by all servlets and JSP pages in the Web application and is good for storing shared data. Example: Your hostname:

13 Example: JSP Expressions Expressions.jsp

14 Example: JSP Expressions

15 Writing JSP Scriplets If you want to do something more complex than output the value of a simple expression, JSP scriptlets let you insert arbitrary code. It has the following form: Example: <% String queryData = request.getQueryString(); out.println("Attached GET data: " + queryData); %>

16 Example: JSP Scriplets BgColor.jsp

17 Example: JSP Scriplets

18 Another Example: JSP Scriplets DayWish.jsp

19 Another Example: JSP Scriplets

20 Using JSP Declarations A JSP declaration lets you define methods or fields that get inserted into the main body of the servlet class. It has the following form: Example: Some Heading <%! private String randomHeading() { return(" " + Math.random() + " "); } %>

21 Example: JSP Declarations AccesCounts.jsp

22 Example: JSP Declarations

23 JSP Directive  A JSP Directive affects the overall structure of the JSP page. It has the form: <%@ directive attribute1="value1" attribute2="value2"... attributeN="valueN" %>  There are three main types of directives: page, include and taglib.

24 The import Attribute The import attribute of the page directive lets you specify the packages that should be imported into the JSP page. Example: Date today:

25 The contentType Attribute  The contentType attribute sets the Content-Type response header, indicating the MIME type of the document being sent to the client.  Use of the contentType attribute takes one of the following two forms. Example: FirstLastEmail Address JamesGoslingjames@gosling.com Larry Brown larry@brown.com SteveBalmersteve@balmer.com ScottMcNealyscott@mcnealy.com

26 Example: Conditionally Generating Excel Spreadsheets ApplesAndOranges.jsp

27 Example: Conditionally Generating Excel Spreadsheets

28 Strategies for invoking dynamic code in JSP  Call Java code directly. Place all Java code in JSP page. Appropriate only for very small amounts of code.  Call Java code indirectly. Develop separate utility classes. Insert into JSP page only the Java code needed to invoke the utility classes.  Use beans. Develop separate utility classes structured as beans. Use jsp:useBean, jsp:getProperty, and jsp:setProperty to invoke the code.  Use the MVC architecture. Have a servlet respond to original request, look up data, and store results in beans.Forward to a JSP page to present results. JSP page uses beans.  Use the JSP expression language. Use shorthand syntax to access and output object properties. Usually used in conjunction with beans and MVC.  Use custom tags. Develop tag handler classes. Invoke the tag handlers with XML-like custom tags.

29 Tips  Limit the amount of Java code that is in JSP pages. At the very least, use helper classes that are invoked from the JSP pages.  Put all your classes in packages.  Define most methods with separate Java classes, not JSP declarations.

30 Exercise: Create a web page that will display the contents of the PERSON table in the owners database. You should be able to display the records in an HTML table or in an Excel spreadsheet. Note: If your browser does not support displaying Excel spreadsheet a prompt will show just choose to open the file.


Download ppt "JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming."

Similar presentations


Ads by Google