1.JSP指令

  jsp指令用来设置整个JSP网页想关闭的属性,如网页的编码和脚本语言等。常用的3种指令为page,include和taglib.

2.JSP声明

  jsp声明用于声明JSP代表的Servlet类的成员变量和方法,语法:<%! %>

  例如:

  <%! int i=0;%>

<%! int a,b,c;%>

<%!

public String f(int i){

  if(i<3)

    return "i<3";

  else

    return "i>=3";

}

%>

每个JSP声明只在当前JSP页面有效。

3.Java程序片段

在JSP文件中,可以在<% 和%>标记间直接嵌入任何有效的JAVA语言代码。如何在page指令中method属性,则生成的代码默认为service方法的主体。

例如:

<%String gender="female"; if(gender.equals("female")){%>

  She is a girl.

<%}else{%>

  He is a boy.

<%}%>

以上代码等价于以下Servlet的service方法:

public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{

  PrintWriter out=response.getWriter();

  String gender="female";

  if(gender.equals("female"))

    out.println("She is a girl.");

  else

    out.println("He is a boy");

}

4.jsp表达式

Jsp表达式标记为<%=和%>。该表达式的值会显示在网页上。int或者float类型的值都会自动转换成字符串加以显示。

<html>

  <head>

    <title></title>

  </head>

  <body>

    <H1>You hit the page:

    <%!int hitcount=1;%>//变量声明,相当于成员变量

    <%int count=0;

    hitcount=count++;%>//java脚本,count相当于局部变量

    <%=hitcount++%>//表达式,没有分号;

    times

    </H1>

  </body>

</html>

以上代码相当于

public class hitCounterServlet extends HttpServlet{

  private int hitcount=1;

  public void init()throws ServletException{

  }

  public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{

    int count=0;

    hitcount=count++;

    PrintWriter out=response.getWriter();

  out.println("html");

  out.println("<head><title>Welcome Page</title></head>");

  out.println("<body>");

  out.println("<H1>You hit the page:"+(hitcount++)+"times</H1>");

  out.println("</body></hmtl>");

  }

  public void destroy(){

  }

}

5.jsp隐含对象(request,response,pageContext,application,out,config,page,session,exception)

6.转发JSP请求

<jsp:forward>标签用于将客户请求重定向到其它html,jsp或者servlet文件。

语法:<jsp:forward page="重新定向的文件"/>

<jsp:forward>标签从一个JSP文件向另一个文件传递包含用户请求的request对象。

如果JSP文件中包含<jsp:forward>标签,那么这个JSP文件中的所有输出数据都不会被发送到客户端,并且<jsp:forward>标签以下的代码不会被执行。

Jsp语法简介的更多相关文章

  1. JSP语法

    第3章  JSP语法 [本章专家知识导学] JSP是建立在Java语言基础上的一种Web程序设计语言,具有自己特有的用法和指令.本章首先介绍JSP页面的程序结构,然后讲述JSP程序中经常用到基本的面向 ...

  2. jsp标签简介

    一.jsp标签简介 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. jsp的常用标签有 ...

  3. JSP EL简介

    JSP EL简介:1.语法:    ${expression} 2.[ ]与.运算符    EL 提供“.“和“[ ]“两种运算符来存取数据.     当要存取的属性名称中包含一些特殊字符,如.或?等 ...

  4. JSP 语法

    JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式: <% 代 ...

  5. JSP-Runoob:JSP 语法

    ylbtech-JSP-Runoob:JSP 语法 1.返回顶部 1. JSP 语法 本小节将会简单地介绍一下JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达 ...

  6. freemarker语法简介

    ftl是一种模板标记语言,用于渲染数据,输入html结构.语法简介如下: ${book.name} ${book.name?if_exists} //值是否存在 ${book.name??} //值是 ...

  7. JSP JSP工作原理 JSP语法 JSP声明 JSP注释 JSP指令 jsp九大隐式/内置对象

    1 什么是JSP   1)为什么说,Servlet是一个动态Web开发技术呢?     Servlet是基于服务端的一种动态交互技术,     HttpServletRequest表示客户端到服务端的 ...

  8. 在MyEclipse中如何去掉JS或jsp语法错误提示!

    在MyEclipse中如何去掉JS或jsp语法错误提示! 关于在 MyEclipse 上 WEB 工程里面的 JS/JSP 经常会有语法错误提示,这是由于 MyEclipse 对其语法要求相当严格所造 ...

  9. Android系统Recovery工作原理之使用update.zip升级过程---updater-script脚本语法简介以及执行流程(转)

    目前update-script脚本格式是edify,其与amend有何区别,暂不讨论,我们只分析其中主要的语法,以及脚本的流程控制. 一.update-script脚本语法简介: 我们顺着所生成的脚本 ...

随机推荐

  1. Git学习笔记一:新建本地仓库及初始化

    1.百度搜索Git下载安装,直接按默认选项安装即可. 例如:Git-2.7.2-32-bit_setup.1457942412.exe 2.配置Git信息,建立版本仓库 (Alt+PrintScerr ...

  2. centos 6.5 升级php

    1>追加CentOS 6.5的epel及remi源. # rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-re ...

  3. Linux自动共享USB设备:udev+Samba

    一.概述 公司最近要我实现USB设备插入Ubuntu后,自动共享到网络上,能像Windows共享一样(如\\192.168.1.10)访问里面的内容,不需要写入权限.当时听完这需求,我这新人表示惊呆了 ...

  4. AutoIt实现Webdriver自动化测试文件上传

    在运用WebDriver进行自动化测试时,由于WebDriver自身的限制,对于上传文件时Windows弹出的文件选择窗口无法控制,通过在网上查找资料锁定使用AutoIt来控制文件上传窗口. Auto ...

  5. Harmonic Number(调和级数+欧拉常数)

    题意:求f(n)=1/1+1/2+1/3+1/4-1/n   (1 ≤ n ≤ 108).,精确到10-8    (原题在文末) 知识点:      调和级数(即f(n))至今没有一个完全正确的公式, ...

  6. 理解Storm并发

    作者:Jack47 PS:如果喜欢我写的文章,欢迎关注我的微信公众账号程序员杰克,两边的文章会同步,也可以添加我的RSS订阅源. 注:本文主要内容翻译自understanding-the-parall ...

  7. ASP.NET Web API 控制器执行过程(一)

    ASP.NET Web API 控制器执行过程(一) 前言 前面两篇讲解了控制器的创建过程,只是从框架源码的角度去简单的了解,在控制器创建过后所执行的过程也是尤为重要的,本篇就来简单的说明一下控制器在 ...

  8. 详解this

    this 虐我千百遍,看完此文效立见!不得不说,这篇文章的总结很地道很全面,适合收藏之用. 原文:all this 习惯了高级语言的你或许觉得JavaScript中的this跟Java这些面向对象语言 ...

  9. RangePartitioner 实现简记

    摘要: 1.背景 2.rangeBounds 上边界数组源码走读 3.RangePartitioner的sketch 源码走读 4.determineBounds 源码走读 5.关于RangePart ...

  10. 异步与并行~List<T>是线程安全的吗?

    返回目录 题目有点意思,大家都知道Dictionary<K,V>不是线程安全的类型,而List<T>是线程安全的吗?在今天之前大叔没有去测试过,而就在今天也是一个VIP问我,说 ...