Java Web程序设计

刘肃平、聂军、王华、李勇波、魏碧晴

目录

  • 1 Java Web概述
    • 1.1 任务导引
    • 1.2 动态网页技术介绍
    • 1.3 JSP的运行环境
    • 1.4 JSP的运行原理
    • 1.5 JSP程序开发模式
    • 1.6 JSP开发工具
    • 1.7 任务实施:JSP开发环境搭建及第一个Hello World程序
  • 2 JSP基本语法
    • 2.1 任务导引
    • 2.2 JSP的基本组成
    • 2.3 脚本元素
    • 2.4 指令元素
    • 2.5 动作元素
    • 2.6 任务实施
  • 3 服务器交互
    • 3.1 任务导引
    • 3.2 JSP内置对象概述
    • 3.3 out对象
    • 3.4 request对象
    • 3.5 response对象
    • 3.6 session对象
    • 3.7 application对象
    • 3.8 其他内置对象
    • 3.9 任务实施:使用JSP内置对象实现登录和注销功能
  • 4 JavaBean技术
    • 4.1 任务引导
    • 4.2 JavaBean概述
    • 4.3 JavaBean的应用
    • 4.4 JavaBean的作用域
    • 4.5 任务实施
    • 4.6 JSP中的文件操作
  • 5 Servlet技术
    • 5.1 任务引导
    • 5.2 Servlet基础
    • 5.3 Servlet开发
    • 5.4 Servlet常用API
    • 5.5 任务实施
  • 6 第6章 过滤器和监听器
    • 6.1 任务导引
    • 6.2 Servlet过滤器
    • 6.3 过滤器创建与配置
    • 6.4 Servlet监听器
    • 6.5 Servlet3.0新特性
    • 6.6 任务实施
  • 7 Java Web的数据库操作
    • 7.1 任务导引
    • 7.2 JDBC技术
    • 7.3 使用JDBC驱动程序访问数据库
    • 7.4 数据库连接的JavaBean
    • 7.5 JDBC对事务的操作
    • 7.6 连接池技术
    • 7.7 任务实施
    • 7.8 扩展阅读
  • 8 JSP高级技术
    • 8.1 任务导引
    • 8.2 EL概述
    • 8.3 JSTL标签库简介
    • 8.4 JSTL核心标签
    • 8.5 JSP与Ajax
    • 8.6 任务实施
    • 8.7 扩展阅读
  • 9 JSP实用组件技术
    • 9.1 任务导引
    • 9.2 上传与下载组件
    • 9.3 发送E-mail
    • 9.4 JSP动态图表
    • 9.5 在线编辑器
    • 9.6 任务实施
脚本元素

请同学们先浏览PPT,这是一个任务点哈!完成后有惊喜哟!


1.脚本段

脚本段以“<%”开始,以“%>”结束,中间包括一段合法的java代码。格式: <% 合法的java代码; %>

在脚本段里可以声明变量、调用方法和进行表达式运算,并每行语句后面要加入分号。在脚本程序中定义的变量在当前的整个页面内都有效,但不会被其他的线程共享,当前用户对变量的操作不会影响到其他的用户。当变量所在的页面关闭后被定义的变量就会被注销。

【案例2-1】计算1+2+……+100的值

<%@ page language="java" pageEncoding="UTF-8"%>

<html>

  <head>

    <title>1+2+……+100</title>

  </head>

  <body>

    <%

    int sum=0;

    for(int i=1;i<=100;i++){

    sum+=i;

    }

     %>

     <% 

      out.println("sum="+sum);

     %>   

  </body>

</html>

2.表达式

表达式:以“<%=”开始,以“%>”结束,中间为一个合法的Java表达式,用来将中间表达式的内容输出到页面。 特别要注意,“<%”与“=”之间不能有空格。语法:<%=expression%>

表达式的执行结果会被自动转换为字符串,显示在JSP页面中。由于表达是不是完整的java语句,所以在表达式的后面不能放置“;”。

例如:<%=1+2+3%>

3.声明

声明,用来定义程序中使用的实体,可以声明变量、方法和类,以“<%!”开始,以“%>”结束。 语法:<%! 声明变量或方法的代码 %>

在页面中声明的变量和方法,在整个页面内都有效,并且它们会被多个线程即多个用户共享。任何一个线程(用户)对声明的变量或方法的修改都会改变它们原来的状态。它们的生命周期从创建到服务器关闭后结束。

【案例2-3】统计网页访问量

<%@ page language="java" contentType="text/html;charset=UTF-8" %>

<%!

    int num=0;                      //声明一个计数变量

    synchronized void add(){      //该方法实现访问次数的累加操作

       num++;

    }

%>

<% add(); %>                      <%-- 该脚本程序调用实现访问次数累加的方法 --%>

<html>

<body><center>您是第<%=num%>位访问该页的游客!</center></body>

</html>

4.注释

注释可以提高程序的可阅读性,它分为HTML注释、Java注释、JSP隐藏注释三种。HTML属于显示注释,会输出到客户端浏览器,但不进行显示;其余两种是隐式注释,不会输出到客户端浏览器。

HTML注释语法:<!—这是HTML注释--> 

Java注释语法:

单行注释://Java提供的单行注释,客户端无法查看

多行注释:/* Java提供的多行注释,客户端无法查看,可以在JSP原始文件以及JSP翻译成的Servlet中看到 */

JSP隐藏注释语法:<%-- 这是隐藏的注释 --%>

【案例2-4】JSP中的多种注释

<%@ page contentType="text/html;charset=UTF-8" %>

<html>

<head><title>注释的使用</title></head>

<body>

<h2>

<ol>

<li>HTML注释</li>

<!--这里是HTML格式的注释,表达式的值是<%=1+2+3 %> -->

  <li>Java注释</li> 

  <% 

//这里是Java语言的单行注释,下面是多行注释

  /*

String a="asb";

String b="dfb";

     */

String s1="此信息不会输出到客户端";

  %>

  <li>JSP注释</li>

  <%--这里是开发人员专用的JSP注释--%>

  <%--

  String s2="此信息不会显示在Servlet中";

  --%>

  </ol>

  </h2>

  </body>

</html>

同学们,显示效果如何?快去动动手吧!

【拓展】JSP生命周期

JSP生命周期就是JSP页面从创建到销毁的整个过程。客户端浏览器访问的JSP页面主要经过编译阶段、初始化阶段、执行阶段、销毁阶段等四个重要阶段。


查看tomcat的work目录:

1) 没有访问时目录里的工程目录是空的

2) 用浏览器访问一次后,生成.class和.java文件

3) 里面有jspInit,jspService,jspDestroy等方法

4) Jsp如果有修改,jsp引擎将重新编译