java第三章

目录

[Jsp 页面的构成:](#Jsp 页面的构成:)

3.3jsp脚本元素

[3.3 jsp指令标记](#3.3 jsp指令标记)

3.4jsp动作标记


Jsp 页面的构成:

Html jsp注释 java脚本元素 jsp动作标记

Html注释<!--html注释-->

Jsp注释<%--注释--%>

用户能看到html注释看不到jsp注释

3.3jsp脚本元素

<%java代码%> 这个是java程序片格式,一个jsp网页可以有任意的jsp片,这些jsp将被tomcat服务器按顺序执行,在一个程序片中的变量称为局部变量

每个客户访问时都有一个线程,每个客户访问互相不受影响

<%! >这里称为成员变量,定义的变量在整个jsp页面都有效,这些变量的内存空间知道服务器关闭才失效,所有用户公用

这里声明的方法是成员方法,方法在页面有效果,但是方法定义的变量只在方法内有效果

<%!

int i = 0;

i++; // 这是错误的,不能在这里执行递增操作

%>

如果你想要对变量 i 进行递增操作,你需要在JSP的脚本let标签 <% %> 内进行,如下所示:

<%!

int i = 0; // 声明变量

%>

<%

i++; // 在脚本let标签内进行递增操作

%>

在 <% %> 标签内,你可以编写任意的Java代码,包括赋值、循环、条件判断等。而 <%! %> 标签仅用于声明那些需要在JSP页面多个请求之间保持状态的成员变量或方法。

<%= %>里面可以插入一个表达式,这个表达式必须能求值,由web服务器负责计算,但返回的值为字符串

<%=n %>就是输出n的值

3.3 jsp指令标记

1.page指令

Page指令标记用来定义整个jsp页面的一些属性和这些属性的值(可以用一条指令指定多个,也可以一条一个)

主要指令有contenttype,include,language,pageEncoding等

1.只能为contentType属性定一个值,用来确定响应的mime类型

<%@page contentType="application/msword;charset=UTF-8"%>

常见:text/html网页形式

  1. include属性作用为 为jsp页面引入包中的类,页面也行,只不过嵌入的contenttyoe应该一致

<%@include file="文件的url"%>

  1. Language属性的作用是指定jsp页面的脚本语言,目前只有java
  2. Pageencoding属性中的charset是指服务器发送给客户浏览器时所见的网页内容的编码,Pageencoding这个本身是存储时所用的编码

3.4jsp动作标记

常用的动作标记:include、forward、usebean......

include动作标记主要是动态嵌入,与指令标记的区别是先处理后包含,页面的contenttype可以不一致

语法有两种格式:

第一种:<jsp:include page="文件的url"/>

第二种:

<jsp:include page="文件的额url" >

子标记:可以传参

<jsp:include/>


Forward:停止后转向

语法:

第一种<jsp:forward page="文件的url"/>

第二种:

<jsp:forward page="文件的url">

子标记:能给参数

</jsp:forward>


Param:不能单独使用,但是可以当作include和forward的子标记,该标记为"名字-子标记"

<jsp:父标记 page = "接收参数页面的url">

<jsp:param name = "参数名" value= "参数值/">

</jsp:父标记>

接收参数的页面可以使用内置对象request调用getParameter("参数名")获取动作标记param传递过来的参数值

相关推荐
lifallen7 分钟前
从Apache Doris 学习 HyperLogLog
java·大数据·数据仓库·算法·apache
fire-flyer7 分钟前
maven-jlink-plugin入门
java·maven
Knight_AL10 分钟前
Java 单元测试全攻略:JUnit 生命周期、覆盖率提升、自动化框架与 Mock 技术
java·junit·单元测试
cominglately14 分钟前
记录一次生产环境数据库死锁的处理过程
java·死锁
用户03321266636718 分钟前
在 Word 文档中插入图片的 Java 指南
java
深圳蔓延科技24 分钟前
单点登录到底是什么?
java·后端
SimonKing26 分钟前
除了 ${},Thymeleaf 的这些用法让你直呼内行
java·后端·程序员
科兴第一吴彦祖1 小时前
基于Spring Boot + Vue 3的乡村振兴综合服务平台
java·vue.js·人工智能·spring boot·推荐算法
ajassi20001 小时前
开源 java android app 开发(十八)最新编译器Android Studio 2025.1.3.7
android·java·开源
纤瘦的鲸鱼1 小时前
Spring Gateway 全面解析:从入门到进阶实践
java·spring·gateway