web初探-Jsp&Servlet-指令

JSP指令用来设置整个JSP页面相关的属性,如网页的编码方式和脚本语言。

语法格式如下:

<%@ 指令 属性=“value” %>

多个属性之间使用逗号隔开

创建一个jsp文件后:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

</body>
</html>

上面是创建jsp文件后的自动生成的代码。下面说明:

page 指令介绍

Page指令为容器提供当前页面的使用说明。一个JSP页面可以包含多个page指令。

语法:<%@ page attribute=“value” %>

上面新建的jsp文件中自动生成的代码第一行就一个page指令。
里面的部分属性:
Language : 用来定义要使用的脚本语言;
contentType:定义 JSP 字符的编码和页面响应的 MIME 类型;
pageEncoding:Jsp 页面的字符编码

scriptlet 标签

通过 scriptlet 标签我们可以在 Jsp 里嵌入 Java 代码;

第一种:<%! %> 我们可以在里面定义全局变量、方法、类;

eg:

<%!
//jps全局变量
String str = "全局变量";
%>

<%!
//jps全局方法
public void func()
{
	System.out.print("全局变量");
}
%>

<%!
class C{
	String str1 = "全局类";
	
	public void func1()
	{
		System.out.print("全局类");
	}
}
%>

特别要注意的是,标签里的感叹号,局部变量标签里是没有感叹号的。

第二种:<% %> 我们可以在里面定义局部变量、编写语句;
第三种:<%= %> 我们可以在里面输出一个变量或一个具体内容;
<%=str %>    //这样就会输出str

Jsp 注释
Html 注释 客户端可见
<%-- --%> Jsp 注释 客户端不可见
// java 单行注释
/* */ java 多行注释

Jsp 包含指令(include指令)

JSP可以通过include指令来包含其他文件。被包含的文件可以是JSP文件、HTML文件或文本文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行。

include 指令中的文件名实际上是一个相对的 URL 地址。如果您没有给文件关联一个路径,JSP编译器默认在当前路径下寻找。

include指令分为静态包含动态包含

静态包含

先包含,后编译处理

格式:
<%@ include file=”要包含的文件”%>

eg:
在项目中新建如下文件:
1.在WebContent文件夹下新建common文件夹,common文件夹下新建foot.jsp和head.html文件,并分别在body中写foot和head字符串。

2.在WebContent文件夹下新建include.jsp文件,在body中:

<body>
<h1>静态包含</h1>
<%@ include file="common/head.html"%>
<p>content</p>
<%@ include file="common/foot.jsp"%>
</body>

在这里插入图片描述
效果:
在这里插入图片描述

动态包含

先编译处理,后包含

格式:
<jsp:include page=”要包含的文件”/>

最后面有个反斜杠,一定不要忘记,我忘记了然后爆错了。

eg:
在上面的include文件中,将body中的内容改为如下:

<body>
<h1>动态包含</h1>
<jsp:include page="common/head.html"/>
<p>content</p>
<jsp:include page="common/foot.jsp"/>
</body>

效果:
在这里插入图片描述
与静态看起来一样,但里面执行是不一样的,并且,在以后开发中,使用动态包含。

Jsp 跳转指令

语法:

<jsp:forward>
<jsp:param value="" name=""/>
</jsp:forward>

例如:
在WebContent文件夹下新建before.jsp和after.jsp文件
在这里插入图片描述
在before.jsp文件中:

<body>
<jsp:forward page="after.jsp">

<jsp:param value="java1212" name="userName"/>
<jsp:param value="123456" name="passWord"/>

</jsp:forward>
</body>

中间两行,分别设置了两个变量,userName和passWord。

在after.jsp文件中:

<body>
服务器内部跳转后的页面<br/>
userName:<%=request.getParameter("userName") %><br/>
passWord:<%=request.getParameter("passWord") %>
</body>

后两行分别获取了两个变量的值

在网址中输入:
http://localhost:8080/bbb/jump/before.jsp

效果:
在这里插入图片描述
可以看到,本来打开的是before.jsp,但已经跳转到after中,并且,带回了before中的变量的值。

这叫服务器内部跳转。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值