jsp语法

一、Jsp 表达式
格式: <% = 变量或表达式  %>
作用: 向浏览器输出变量的值或者是表达式计算的结果
注意:
1 jsp 表达式是使用 out.print( ); 方式向浏览器输出内容
2 )表达式最后不要加上分号。

二、Jsp 脚本片段(局部变量)
格式: <%  java 代码(语句)   %>
作用: 执行 java 代码
注意:
1 Jsp 的脚本内容原封不动直接翻译到 _jspService 方法 中,在执行 _jspService 方法时脚本代码会被执行。
2 Jsp 脚本可以写多行 java 语句,而且中间可以穿插 html 代码; 不能在脚本中插入函数(方法)语句,因为函数不能嵌套函数。

三、Jsp 声明(成员变量、成员方法)
格式: <% ! 变量或方法 %> (有个感叹号)
作用: 用于声明 jsp 的变量或方法
注意:
1 脚本片段都是局部变量或语句,而 jsp 声明的变量是成员变量。
2 jsp 声明的方法是成员方法, 脚本片段 不能声明方法!!!!
3 )不能声明和 java 源码码相同名称的方法,例如 _jspInit() 不能声明此方法。

例如:
<%!
static
{
System.out.println("loading Servlet!");
}
private int globalVar = 0;
public void jspInit()
{
System.out.println("initializing jsp!");
}
%>
<%!
public void jspDestroy()
{
System.out.println("destroying jsp!");
}
%>
四、Jsp 注释
格式: <%-- jsp 注释 -- %>
注意:
jsp 页面中 html 的注释 <!-- --> 会被当前内容执行。而 jsp 的注释 <%-- jsp 注释 --%> 不会被翻译和执

五、Jsp 指令
JSP 指令的基本语法格式:
<%@ 指令 属性名 =" " %>
举例: <%@ page contentType="text/html;charset=UTF-8"%>
如果一个指令有多个属性,这多个属性可以写在一个指令中(用空格隔开),也可以分开写。
例如:
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ page import="java.util.Date"%>
也可以写作:
<%@ page contentType="text/html;charset=UTF-8" import="java.util.Date"%>

1 @taglib 指令
主要用于在使用 jsp 的标签库时,导入标签库的指令

2 @include 指令
include 指令用于引入其它 JSP 页面,如果使用 include 指令引入了其它 JSP 页面, 那么 JSP 引擎将把这两个 JSP 翻译成一个 servlet 所以 include 指令引入通常也称之为静态引入。
格式: <%@include  file=" 包含的页面路径 " %>
作用: 用于包含其他页面。
其中的 file 属性用于指定被引入文件的相对路径。   file 属性的设置值 必须使用相对路径 ,如果以 / ”开头,表示相对于当前 WEB 应用程序的根目录(注意不是站点根目录),否则,表示相对于当前文件。
<%-- 在当前页面包含 common/header.jsp 页面 --%>
   <%@ include   file = "common/header.jsp" %>
注意:
1 包含与被包含的页面只生成一个 java 源代码 。把包含与被包含的页面 先合并翻译成一个 java 源文件 ,然后再编译运行!!,这种包含叫 静态包含 !!!(源码级别包含)
2 )被包含的页面不需要写全局的 html 标签(例如: html/head/body
 
细节:
被引入的文件必须遵循 JSP 语法。
被引入的文件可以使用任意的扩展名,即使其扩展名是 html JSP 引擎也会按照处理 jsp 页面的方式处理它里面的内容,为了见明知意, JSP 规范建议使用 .jspf(JSP fragments)作为静态引入文件的扩展名。
由于使用 include 指令将会涉及到 2 JSP 页面,并会把 2 JSP 翻译成一个 servlet ,所以这 2 JSP 页面的指令不能冲突(除了 pageEncoding 和导包除外)

3 @page 指令
page 指令用于定义 JSP 页面的各种属性,无论 page 指令出现在 JSP 页面中的什么地方, 它作用的都是整个 JSP 页面 ,为了保持程序的可读性和遵循良好的编程习惯, page 指令最好是放在整个 JSP 页面的起始位置。
格式: <%@page  %>
<%@   page  
language = "java"          // 服务器使用什么语言来翻译这个 jsp 文件
import = "java.util.*"      // 导入其他包或类。除了 java.lang.* 以外的包或类都需要导入。多个包之间以逗号分隔
pageEncoding = "utf-8"     // 服务器在翻译 jsp 文件时查询的码表
contentType = "text/html; charset=utf-8"    // 指定 jsp 页面内容向浏览器发送时的数据编码
注意:影响 jsp 编码的问题
1 )保存 jsp 文件时
2 )翻译 jsp 文件时
3 )服务器向浏览器输出内容时
Jsp2.0 之后:
1 contentType 的编码会根据 pageEncoding 的编码进行自动设置
2 )在 ecplise 工具中,只要指定 pageEncoding 的编码,那么保存 jsp 文件时会自动根据此编码来保存。
结论:在 jsp2.0 之后, jsp 文件只需要在 page 指令中指定 pageEncoding 编码即可!!!!
 
buffer = "8kb"   // 指定当前页面内容的缓冲大小
errorPage = ""    / / jsp 页面发生错误时,指定错误处理的页面
isErrorPage = "false"  // 这个属性是在错误处理页面指定的。如果该属性为 true ,则可以使用 exception 内置对象来输出错误信息。如果为 false ,则不能使用 exception
session = "true"    // 开启 session 会话功能
isELIgnored = "false"   %>
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值