标签:
1.为什么有JSP规范
Servlet技术产生以后,在使用时最麻烦的是使用大量的out.print语句输出页面。
这样的形式在系统变更、维护、预览效果时都不能方便快捷的完成任务,于是推出JSP这种技术,
用来将Servlet中负责显示的语句抽取出来。
2.什么是JSP
Sun公司制定的一种服务器端动态页面技术的组件规范。
JSP是一个以".jsp"为后缀的文件,在该文件中,主要是HTML和少量的Java代码。
JSP文件会被容器转换成一个Servlet类,然后执行。
3.如何编写JSP
1.写一个以".jsp"为后缀的文件
2.在该文件中,可以包含如下的内容:
HTML (CSS,JavaScript)
注释
Java代码
指令
隐含对象
4.JSP页面中的HTML代码
JSP页面中的HTML包括:
HTML标记
CSS
JavaScript
像编写HTML页面一样编写即可
作用:控制页面在浏览器中显示的效果
转译成Servlet时的规则
成为Servlet中service()方法的out.write语句
5.JSP页面中的注释
语法:
<!-- 注释内容 -->
HTML注释,注释中的内容如果包含Java代码,这些Java代码会被执行
<%-- 注释内容 --%>
JSP特有注释,如果注释的内容中出现Java代码会被忽略
6.JSP页面中的Java代码
JSP页面中的Java代码包含一下三种:
JSP表达式
JSP小脚本
JSP声明
编写位置:
页面的任意位置
作用:
控制页面中可变内容的产生
7.JSP表达式
语法规则:<%= ... ... %>
合法内容:变量、变量加运算符组合表达式,有返回值的方法
转译成Servlet时的规则:在service()方法中用out.print语句输出该变量、表达式、方法的值
例如
<p>The square root of 5 is <%=Math.sqrt(5)%></p>
转换成
out.write("<p>The square root of 5 is"); out.write("Math.sqrt(5)"); out.write("</p>");
8.JSP小脚本
语法规则:<% ... ... %>
合法内容:
能够写在Java代码里的片段都可以作为小脚本
转译成Servlet时的规则:
原封不动成为Servlet类的service()方法里面的一段代码
例如:
<% String name = request.getParameter("name"); if(name!=null && !name.equals("")){ %> <p>Your name is <%=name%></P> <% } %>
转换成
String name = request.getParameter("name"); if(name!=null && !name.equals("")){ out.write("<p>Your name is"); out.write("name"); out.write("</p>"); }
9.JSP声明
语法规则:<%! ... ... %>
合法内容:
成员属性或成员方法的声明
转译成Servlet的规则:
成为JSP页面转义成的Servlet类中成员属性或成员方法
例如:
<%! public String getResult(){ //... ... } %>
将代码整体插入到Servlet类中
public class Index_JSP extends JSPBase{ public String getResult(){ //... ... } public void service()... }
10.JSP页面中的指令
语法规则:<%@ 指令名 属性=值 %>
常用指令:
page指令
include指令
taglib指令
作用:
控制JSP在转译成Servlet时生成的内容
11.page指令
作用:用于导包、设置页面属性
例如:
<%--导包 --%> <%@ page import ="java.util.*" %> <%@ page import ="java.util.*,java.sql.*" %> <%--设置response.setContentType()方法的参数值 --> <%@ page contentType="image/gif" %> <%--设置容器读取该文件的编码格式--%> <%@ page pageEncoding= "UTF-8" %>
12.include指令
作用:
在JSP页面转化成Servlet时,能够将其他文件包含进来。可以包含JSP文件也可以是静态的HTML文件。
通过该语句能方便的在每个JSP页面中包含导航栏、版权声明、logo等
语法:
<%@ include file="url" %>
例如
<%@ include file = "header.html" %>
标签:
原文地址:http://www.cnblogs.com/Crow0/p/5136705.html