JSP基础语法

本文深入讲解JSP的基础语法,包括脚本元素、指令元素和动作元素。探讨了声明脚本、普通脚本、表达式脚本的作用及语法,以及page、include、taglib指令的应用场景。同时,对比了静态包含和动态包含的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

任何语言都有自己的语法,JAVA中有,JSP虽然是在JAVA上的一种应用,但是依然有其自己扩充的语法,而且在JSP中,所有的JAVA语句都可以使用

jsp基础语法

1. 脚本元素:
脚本元素包括:

  • 声明脚本
    语法:<%! %> 用来声明成员变量和成员方法
<%!    
    int a=3;
    public int sum(int a,int b){
     return a+b;   
    };
  %>
  • 普通脚本
    语法<% %> 用来声明局部变量和方法调用
<%              
    int b=123;
    int result=sum(1,4);
    out.print("result:"+result);
    request.setAttribute("uname","zhangsan");
    int c=1/0;
  %>
  • 表达式脚本
    语法:<%= %> 用来计算和显示表达式结果

  <%=123+1%>
  <%=request.getAttribute("uname")%>

2. 指令元素
jsp所有页面的指令元素都是以<%@开头以%>结束
常见的指令元素包括
<1.page指令
语法<%@page 属性名=属性值%>
作用:用来设置jsp页面相关属性和配置信息

<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8"
errorPage="error.jsp" %>
  • language:当前jsp文件用哪种语言进行赋值,赋值java说明当前jsp由java语言负责解析
  • contentType:设置jsp页面的上下文类型,主要是设置响应文件类型个字符集
  • import:在当前页面引入其他类
  • errorpage:设置当前页面出现异常后,处理异常的界面
  • iserrorpage:当前页面是否是处理异常或者错误的界面,取值true和false,true表示当前页面是负责处理异常的界面,false表示当前页面不是处理异常的界面,默认值是false。
  • 当iserror为true时,我们可以使用exception来获取异常信息,当isErrorpage为false时,页面不能使用exception

<2.include指令(静态包含)
语法:<%@ include file=“地址” %>
作用:在当前页面包含另一个页面
inclue也叫静态包含,在一个页面将另一个页面的完整代码完整包含进来,静态包含在编译后产生一个class文件。
在index.jsp中静态包含error.jsp

<%@include file="error.jsp"%>

在error.jsp中定义一个成员变量price

<%!   int price=9; %>

在index.jsp中输出price,发现可以拿到price的值

    out.print(price+"</br>");

< 3.taglib指令
语法:<%@ taglib uri="" prefix="">
uri表示标签库的地址
prefix表示标签的前缀
使用标签库前要先添加标签库的jar包
在页面使用taglib指令引入标签库

 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt"  prefix="fmt"%>
<fmt:formatDate value="<%=new Date()%>" pattern="yyyy-MM-dd HH:mm:ss"/>

3. 动作元素

  • 动态包含
    作用:在当前页面将另外一个页面包含进来(只包含结果)
    语法:<jsp:include page=“”></jsp:include>
    动态包含在编译后会产生多个编译结果(class文件)
    静态包含和动态包含有什么区别?
    静态包含源代码 ,编译后产生1个class文件
    动态包含结果,编译后产生多个class文件
  • 请求转发
    语法:<jsp:forward page=“a.jsp”></jsp:forward>

请求转发到a.jsp,并且传递参数

<jsp:forward page="a.jsp">
    <jsp:param name="uname" value="admin"></jsp:param>
    <jsp:param name="passwd" value="123"></jsp:param>
</jsp:forward>

在a.jsp中获取参数的值

uname:<%=request.getParameter("uname")%>
passwd:<%=request.getParameter("passwd")%>

在这里插入图片描述

jsp注释

1.java注释
2.Html注释
3.jsp注释<%-- --%>
html注释和jsp注释区别?
Html注释的内容会被编译,jsp注释的内容不会被编译

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值