JSP基本语法

摘要

JSP(Java Server Pages)通过将动态代码嵌入到静态的HTML中,从而产生动态的输出。JSP 输入p57页1

重难点

重点:JSP指令和JSP动作
难点:

4.1第一个JSP页面

HTML不能够查询数据库,Java 代码却访问数据库。因此,在 HTML 代码中间混合 Java 代码,就能够让网页拥有动态的功能。而嵌入了 Java代码的网页,就是 JSP。

  • JSP 与 HTML 区别:

    • HTML 页面是静态页面,也就是事先写好放在服务器上,由 Web 服务器向客户端发送。JSP 页面是由 JSP 容器执行该页面的 Java 代码部分,然后,实时生成的 HTML页面,因而说其是服务器端动态页面。
  • 页面效果,用 JavaScript 也能够实现,有何区别?
    最大的区别是:JavaScript 源代码是被服务器发送到客户端,由客户端执行,因此,客户端可以看到 JavaScript 源代码;而 Java 代码却不会。

  • HTML和 JavaScript源代码客户端均可见

  • Java内嵌代码客户端不可见

4.2注释

  1. HTML注释 ,发送给客户端可见
<!--注释-->  
  1. JSP 注释 ,不发送给客户端不可见
<%--注释--%>  
  1. Java 注释 ,不发送给客户端不可见
  //注释  /*注释*/ 
  1. 不发送给客户端自然不会被编译也不会被执行

4.3 JSP表达式

  • 作用:将其里面内容所运算的结果输出客户端

  • 语法:

   <%=变量/返回值/表达式%>  
  //等价于:
  <% out.print(变量/返回值/表达式); %>  <!-- 注意分号哦 -->
  • 注意细节:

    • JSP 表达式中不能用分号";"结束
    • 在 JSP 表达式中不能出现多条语句
    • JSP表达式的内容一定是字符串类型,或者能通过 toString()函数转换成字符串的形式

4.4 JSP程序段

  • 语法:

    <% Java代码 %>  
    
  • 实际上,JSP 程序段就是插入到 JSP 程序的 Java 代码段。

  • 在网页的任何地方都可以插入JSP程序段,在程序段中可以加入任何数量的java代码。

  • 注意:不能在JSP程序段中定义函数

  • JSP中可以放入HTML,也可以放入JSP程序段和 JSP表达式;

  • 凡是没有写入<% %>的代码,都被解释为HTML

  • JSP中程序段可以用很多段,但系统会认为是一大段,所以程序段中的大括号可以跨多个程序段

4.5 JSP声明

  • 语法:

    <%! 代码 %>
    
  • JSP程序段中(其他地方不一定),必须先定义,后使用。

  • JSP声明中,可以定义网页中的全局变量,这些变量在JSP的任何页面都能使用。

  • JSP声明中定义的变量是网页级别的,系统会优先执行,所以可以在JSP的任何地方定义变量。

  • JSP声明中只能作定义,不能实现逻辑控制




4.6 URL传值

  • HTTP 是无状态的协议。Web 页面本身无法向下一个页面传递信息,如果需要让下一个 页面得知该页面中的值,除非通过服务器。

  • 流程如图:

  • 语法:

    ?参数名1=参数值1&参数名2=参数值2&参数名3=参数值3&....
    //举个栗子
    http://localhost:8080/prj04/page.jsp?m=3&n=5
    
    //获得参数
    <% 
    	String str = request.getParameter("m");
    %>
    
  • 提示:

    • 如果参数没有传过来或者参数名写错,str为null
    • 和out一样,request也是JSP九大对象之一,作用是获取请求的信息。
  • 方法局限:

    • 传输的数据只能是字符串
    • 传输数据的值会在浏览器的地址栏里面被看见(不安全)
  • URL传值的优势:
    简单性和平台支持的多样性(没有浏览器不支持 URL),很多程序还是用 URL 传值比较方便 集合框架包括接口、实现和算法


4.7 JSP 指令和动作

  1. JSP 指令告诉 JSP 引擎对 JSP 页面如何编译,不包含控制逻辑,不会产生任何可见的输
    出。
  2. 语法:
<%@ 指令类别 属性1="属性值1" ··· 属性n="属性值n" %>
<!--eg: -->
<%@ page contentType="text/html; charset=gb2312" %>
  1. 注意:属性名大小写敏感
  2. JSP 包含三个指令:pageincludetaglib。其中,使用最多的是 page 指令和 include 指令。
  3. 通常情况下,JSP程序都是以page指令开头的。page指令用来设定页面的属性和相关功能,可以导入需要的类、指明JSP输出内容的类型、指定处理异常的错误页面等操作。

page指令

1. 导入包

  • 语法:

    <%@ page import="包名.类名" %>
    <%@ page import="包名.*" %>  //  用*表示导入包中所有类
    
    <%@ page import="包名1.类名1" %>
    <%@ page import="包名2.类名2" %>
    <!--或者-->
    <%@ page import="包名1.类名1,包名2.类名2" %>  //导入多个类
    
    

2. 设定字符集

  • 语法:
<%@ page pageEncoding="编码类型" %>  <!-- 常见编码 ISO-8859-1 gb2312 GBK -->
<!--例如-->
<%@ page pageEncoding="GBK" %>

3. 设定错误页面

  • 语法:
<!--在发生异常的页面-->
<%@ page errorPage="anErrorPage.jsp" %>  <!-- anErrorPage.jsp就是处理异常的页面-->
<!--在异常处理显示页面-->
<%@ page isErrorPage="true" %>




4. 设定MIME类型和字符编码

  • 语法:
<%@ page contentType="MIME类型; charset=字符编码" %>  <!--charset的作用与pageEncoding属性作用相同-->
<!--栗子:-->
<%@ page contentType="text/html; charset=gb2312" %>

include指令

  • 可以在JSP程序中插入多个外部文件,这些文件可以是JSP、HTML、Java程序,甚至是文本。编译时,include指令就会把相应的文件包含进主文件。
  • 作用类似C语言中的include预编译指令,都是原封不动的复制插入文件中的代码到主文件中。
  • 可用提高代码的重复使用。
  • 语法:
<%@ include file="文件名" %>
<!--例如-->
<%@ iuclude file="logo.jsp" %>

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值