JavaWeb课程系列

第9章 JSP

1.背景

Servlet可以通过转发或重定向跳转到某个HTML文档。但HTML文档中的内容不受Servlet的控制。比如登录失败时,跳转回登录表单页面无法显示诸如“用户名或密码不正确”的错误消息,所以我们目前采用的办法是跳转到一个错误信息页面。如果通过Servlet逐行输出响应信息则会非常繁琐。

 

Servlet

HTML

长处

接收请求参数,访问域对象,转发页面

以友好方式显示数据

短处

以友好方式显示数据

动态显示数据

Servlet和HTML二者的长处结合起来就诞生了JSP技术。

2.jsp简介

Java Server Page

1)JSP的本质是一个Servlet,Servlet能做的事情JSP都能做。

2)JSP能够以HTML页面的方式呈现数据,是一个可以嵌入Java代码的HTML。

3)JSP不同于HTML,不能使用浏览器直接打开,而必须运行在Servlet容器中。

3.jsp运行原理

注意:JSP仅在第一次访问时执行“翻译”和“编译”,之后再请求时就直接运行.class文件了。

4.jsp基本语法

接下来看一下jsp的基本语法及规则

4.1 jsp模板元素

1)JSP页面中的静态HTML内容称之为JSP模版元素,在静态的HTML内容之中可以嵌套JSP的其他各种元素来产生动态内容和执行业务逻辑。

2)JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观

4.2 jsp表达式

1)JSP表达式(expression)提供了将一个Java变量或表达式的计算结果输出到客户端的简化方式,它将要输出的变量或表达式直接封装在<%= 和 %>之中

举例:Current time: <%= new java.util.Date() %>

2)JSP表达式中的变量或表达式的计算结果将被转换成一个字符串,然后被插入到整个JSP页面输出结果的相应位置处。

3)JSP表达式中的变量或表达式后面不能有分号(;),JSP表达式被翻译成Servlet程序中的一条out.print(…)语句。