jsp的语法

一.指令元素:用于从jsp发送一个信息到容器,比如设置全局变量、文字编码和引入包等

a.page指令:用于设置JSP页面的属性,这些属性将用于和JSP容器通信,控制所生成的servlet结构。

<%@ page contentType="text/html;charset=gb2312"%>

b. 该指令用于引入一个文件(通常是jsp文件),jsp引擎会把两个jsp文件翻译成一个servlet文件,因此也称为静态引入。被引入的jsp文件只需保留page指令即可<html><body>...均可省略。

<%@ include file="filename"%>

c.taglib指令:声明用户使用的自定义标签。声明用户使用自定义的标签,将标签库描述符文件导入到jsp页面。
**
<%@ taglib (uri=”tigLibURL” 或 tagDir=”tagDir”) prefix=”tagPrefix” %>**

uri属性:定位标签库描述符的位置。唯一标识和前缀相关的标签库描述符,可以使用绝对或相对URL。
tagDir属性:指示前缀将被用于标识在WEV-INF/tags目录下的标签文件。

prefix属性:标签的前缀,区分多个自定义标签。不可以使用保留前缀和空前缀,遵循XML命名空间的命名约定。

二.脚本元素 可以理就是java片段scriplet
1.scriplet <% java代码%>
2.表达式 <%=java表达式%> <%=rs.getString(1)%>
3.定义变量 <%! int i=90;%>
4.定义函数 <%! public int getResult(int a,int b) {return a+b;}%>
注:函数不能在<% %>定义

三. 动作元素
<jsp:forward file="">的作用
在开发jsp过程中,我们通常把jsp放入WEB-INF目录,目的是为了防止用户直接访问这些jsp文件
在WebRoot下我们有一个入口页面,它的主要作用是转发

<jsp:forward file="/WEB-INF/XX.JSP"></JSP:forward>
<jsp:include file=""></jsp:include>

<%@ include file=""%> 静态引入
<jsp:include file=""></jsp:include> 动态引入

相同点:把一个文件引入到另一个文件
区别:静态引入把两个jsp文件翻译成一个servlet,所以被引入的文件不要包括<body><html>;动态引入把两个jsp分别翻译,所以被引入的jsp包含<body><html>也可以。

你可能感兴趣的:(jsp,servlet)