javaweb学习(一)jsp页面

jsp页面概述

jsp页面是指扩展名为.jsp的文件,可以通过jsp页面创建动态网页。在一个jsp页面中,可以包括指令标识、HTML代码、JavaScript代码、嵌入的Java代码、注释和jsp动作标识等内容。下面看一个jsp页面的示例代码

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.util.Date"%>
<%!	//声明变量和方法
	Date date;
	public int sum(int start,int end){
		int sum = 0;
		for(int i=start;i<=end;i++){
			sum+=i;
		}
		return sum;
	}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>第一个jsp应用</title>
</head>
<body>
<font size=4>
<p>程序创建date对象
<%	//java程序片
	date=new Date();
	out.println("<BR>"+date);
	int start = 1;
	int end = 100;
	int num = sum(start,end);
%>
<br>从<%= start %>加到<%= end %>的和是<%= num %>		<!-- java表达式 -->
</font>
</body>
</html>

运行本实例,结果如下图所示:
在这里插入图片描述
没有接触过任何jsp页面知识的人可能无法看懂上诉代码,没关系,下面会分别介绍各个部分。

指令标识

指令标识主要用于设定整个jsp页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何内容输出到网页中。jsp页面指令标识的语法格式如下:

<%@ 指令名 属性1="属性值1" 属性2="属性值2"...%>
  • 指令名:用于指令指令名称,在jsp中包含page、include和taglib3条指令
  • 属性:用于指令属性名称
  • 属性值:用于指定属性值

page指令

page是jsp页面最常用的指令,用于定义整个jsp页面的相关属性,这些属性在jsp中被服务器解析成Servlet时会转换为相应的Java程序代码。page指令包含的属性有15个,下面对一些常用的属性进行介绍

1.language属性

设置jsp页面使用的语言,目前只支持Java语言,默认值为Java,代码如下:

<%@ page language="java" %>
2.contentType属性

该属性用于设置jsp页面的MIME类型和字符编码,浏览器会据此显示网页内容。代码如下:

<%@ page contentType="text/html; charset=UTF-8"%>
3.pageEnconding属性

该属性用于定义jsp页面的编码格式,也就是指定文件编码。代码如下:

<%@ page pageEncoding="UTF-8"%>
4.import属性

该属性用于设置jsp导入的类包。jsp页面可以嵌入Java代码片段,这些Java代码在调用api时需要导入相应的类包时就需要用这一属性导入。代码如下:

<%@ page import="java.util.Date" %>

include指令

通过include指令可以在一个jsp页面中包含另一个jsp页面,这种包含是静态包含,最终只生成一个文件,所以在两个文件中不能有相同名称的变量。include指令的语法格式如下:

 <%@ include file="path"%>

taglib指令

在jsp文件中,可以通过taglib指令标识声明该页面中所使用的标签库,同时引用标签库,并指定标签的前缀。示例代码如下:

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/cor"%>
  • prefix:用于指定标签的前缀。该前缀不能为jsp、jsxp、java、javax、sun、servlet和sunw。
  • uri:用于指定标签库文件的存放位置。

嵌入Java代码

在jsp页面中嵌入Java代码有三种形式,分别用于变量取值、声明变量和嵌入代码片段。

jsp表达式

格式如下:

<%= 表达式%>

这种方法可以求出该表达式的值,如<%= user%>的值为变量user的值,当然表达式不仅仅是变量,也可以是函数,代数表达式等。

声明标识

声明标识用于在jsp页面中定义全局的变量或方法,格式如下:

<%! 声明变量或方法的代码%>

代码片段

格式如下:

<% 代码片段%>

动作标识

这里简单介绍三种动作标识。
首先,是与前面include指定标识类似的<jsp:include>动作标识,格式如下:

<jsp:include page="url">

此外,还有可选属性flush用于设置是否刷新缓冲区,默认值为false,以及可以填写子动作标识<jsp:param>用于向被包含的动态页面中传递参数。
与include指定标识类似不同的是,该动作标识是动态包含,服务器执行的是多个文件,编译器分别对这些文件进行编译,而不合成一个文件,所以两个文件中可以有重名。

其次,还有请求转发标识<jsp:forward>,格式如下:

<jsp:forward page="url"/>

<jsp:forward page="url">
	子动作标识<jsp:param>
</jsp:forward>

用这一动作指令时,会跳转到url所指示的页面。
最后,介绍传递参数标识<jsp:param>,其格式如下:

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

通过这种方式传递参数,其效果与在url后添加“?参数名=参数值”是相同的。在目标页面中,可以通过内置对象request来获取参数值。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值