JavaWeb教程 JSP中的三大指令

 

 

 

指令标识主要用于设定整个JSP页面范围内都有效的相关信息,它是被服务器解释并执行的,不会产生任何内容输出到网页中。也就是说,指令标识对于客户端浏览器是不接见的。JSP页面的指令标识与我们的身份证类似,虽然公民身份证可以标识公民身份的,但是它并没有对所有见到过我们的人都公开。

JSP指令语法

JSP指定标识的语法格式如下:

<%@ 指令名 属性1="属性值1" 属性2="属性值2" ...%>

参数说明:

指令名:用于指定指令名称,在JSP中包含page、include和taglib3条指令

属性:用于指定属性名称,不同的指令包含不同的属性。在一个指令中可以设置多个属性,各属性之间用逗号或空格隔开。

属性值:用于指定属性值。

JSP的三大指令

1.page指令

page是JSP页面最常用的指令,用于定义整个JSP页面的相关属性,这些属性在JSP中被服务器解析成Servlet时会转换为响应的Java程序代码,page指令的语法格式如下:

<%@ page attr1="value1" attr2="value2" ... %>

page指令包含的属性有15个,下面对一些常用的属性进行介绍。

(1)language属性

该属性用于设置JSP页面使用的语言,目前只支持Java语言,以后可能会支持其他语言,如C++、c#等。该属性的默认值为Java。

<%@ pagge language="java" %>

(2)extends 属性

该属性用于设置JSP页面继承的Java类,所有JSP页面在执行之前都会被服务器解析成Servlet,而Servlet是由Java类定义的,所以JSP和Servlet都可以继承指定的父类。该属性并不常用,而且有可能影响服务器的性能优化。

(3)import属性

该属性用于设置JSP导入的类包。JSP页面可以嵌入Java程序代码块,这些Java代码再调用API时需要导入相应的类包。

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

(4)pageEncoding属性

该属性用于定义JSP页面的编码格式,也就是指定文件编码。JSP页面中所有代码都是用该属性指定的字符集,如果该属性值设置为ISO-8859-1,那么这个JSP页面就不支持中文字符。通常设置编码格式为UTF-8,因为它可以显示目前世界上所有的文字。

<%@ page pageEncoding="UTF-8" %>

(5)contentType属性

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

<%@ page contentType="text/html;charset=UTF-8" %>

(6)session属性

该属性指定JSP页面是否使用HTTP的session会话对象。其属性值是boolean类型,可选值为true和false。默认值为true,表示可以使用session会话对象:如果设置为false,则当前JSP页面将无法使用session会话对象。

<%@ page session="false" %>

上述代码设置JSP页面不使用session对象,任何对session对象的引用都会发生错误。

(7)buffer属性

该属性用于设置JSP的out输出对象使用的缓冲区大小,默认大小为8kb,且单位只能使用KB,建议程序开发人员使用8的倍数16、32、64、128等,作为该属性的属性值。

<%@ page buffer="128KB" %>

(8)autoFlush属性

该属性用于设置JSP页面缓存满时,是否自动刷新缓存。默认值为true,如果设置为false,则缓存填满时将抛出异常。

<%@ page autoFlush="false" %>

(9)isErrorPage属性

通过该属性可以将当前JSP页面设置成错误处理页面,以处理另一个JSP页面的错误,也就是异常处理。这意味着当前JSP页面业务的改变。

<%@ page isErrorPage="true" %>

(10)errorPage属性

该属性用于指定处理当前JSP页面异常错误的另一个JSP页面,指定的JSP错误处理页面补习设置isErrorPage属性为true,errorPage属性的属性值是一个url字符串。

<%@ errorPage="error/loginErrorPage.jsp" %>

2.include指令

文件包含指令include是JSP页面的另一条指令标识,通过该指令可以在一个JSP页面中包含另一个JSP页面。不过该指令是静态包含,也就是说被包含文件中所有内容会被原样包含到该JSP页面中,即使被包含文件中又JSP代码,在包含时也不会被编译执行。使用include指令,最终将生成一个文件,所以在被包含和包含的文件中,不能有相同名称的便令。include指令的语法格式如下:

<%@ include file="path" %>

该指令只有一个file属性,用于指定要包含文件的路径。该路径可以是相对路径,也可以是绝对路径,但是不可以通过<%= %>表达式所代表的文件。

使用include指令包含文件可以大大提高代码的重用性,而且也便于以后的维护和升级。

3.taglib指令

在JSP文件中,可以通过使用taglib指令标识声明该页面中所使用的标签库,同时引用标签库,并制定标签库的前缀。在页面中引用标签库后,就可以通过前缀来引用标签库中的标签。taglib指令的语法格式如下:

<%@ taglib prefix="tagPrefix" uti="tagURI" %>

参数说明:

prefix:用于指定标签的前缀。该前缀不能命名为jsp、jspx、java、javax、sun、servlet和sunw。

uri:用于指定标签库文件的存放位置

实例代码如下:

<%@ taglib prefix="c" url=http://java.sun.com/jsp/jstl/core %>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的Java Web计算器的实现过程: 1. 首先创建一个JSP页面用于显示计算器界面。在该页面,需要有一些按钮,如数字、运算符、清除、等于等。 2. 创建一个JavaBean类,用于处理计算器的逻辑。在该类,需要定义一些成员变量,如操作数1、操作数2、运算符等,以及一些方法,如加、减、乘、除等。 3. 在JSP页面,使用`<jsp:useBean>`指令引用JavaBean类,并通过`<jsp:setProperty>`指令设置JavaBean类的属性。 4. 在JSP页面,使用`<% %>`标签引用JavaBean类的方法,用于处理用户的操作。例如,当用户点击加号按钮时,调用JavaBean类的加法方法。 5. 最后,使用`<%= %>`标签输出计算结果。 下面是一个简单的Java Web计算器的代码实现: Calculator.jsp: ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.example.bean.CalculatorBean" %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Calculator</title> </head> <body> <h1>Calculator</h1> <form method="post"> <table> <tr> <td colspan="4"><input type="text" name="result" value="${calculatorBean.getResult()}" /></td> </tr> <tr> <td><input type="button" value="7" onclick="document.forms[0].result.value += '7'" /></td> <td><input type="button" value="8" onclick="document.forms[0].result.value += '8'" /></td> <td><input type="button" value="9" onclick="document.forms[0].result.value += '9'" /></td> <td><input type="button" value="+" onclick="document.forms[0].operator.value = '+'" /></td> </tr> <tr> <td><input type="button" value="4" onclick="document.forms[0].result.value += '4'" /></td> <td><input type="button" value="5" onclick="document.forms[0].result.value += '5'" /></td> <td><input type="button" value="6" onclick="document.forms[0].result.value += '6'" /></td> <td><input type="button" value="-" onclick="document.forms[0].operator.value = '-'" /></td> </tr> <tr> <td><input type="button" value="1" onclick="document.forms[0].result.value += '1'" /></td> <td><input type="button" value="2" onclick="document.forms[0].result.value += '2'" /></td> <td><input type="button" value="3" onclick="document.forms[0].result.value += '3'" /></td> <td><input type="button" value="*" onclick="document.forms[0].operator.value = '*'" /></td> </tr> <tr> <td><input type="button" value="0" onclick="document.forms[0].result.value += '0'" /></td> <td><input type="button" value="C" onclick="document.forms[0].result.value = ''" /></td> <td><input type="submit" value="=" /></td> <td><input type="button" value="/" onclick="document.forms[0].operator.value = '/'" /></td> </tr> <tr> <td colspan="4"><input type="hidden" name="operator" /></td> </tr> </table> </form> </body> </html> ``` CalculatorBean.java: ```java package com.example.bean; public class CalculatorBean { private double operand1; private double operand2; private String operator; private double result; public CalculatorBean() { } public double getOperand1() { return operand1; } public void setOperand1(double operand1) { this.operand1 = operand1; } public double getOperand2() { return operand2; } public void setOperand2(double operand2) { this.operand2 = operand2; } public String getOperator() { return operator; } public void setOperator(String operator) { this.operator = operator; } public double getResult() { return result; } public void setResult(double result) { this.result = result; } public void add() { result = operand1 + operand2; } public void subtract() { result = operand1 - operand2; } public void multiply() { result = operand1 * operand2; } public void divide() { result = operand1 / operand2; } } ``` 在以上代码,我们通过`<jsp:useBean>`指令引用了CalculatorBean类,并使用`<jsp:setProperty>`指令设置了CalculatorBean类的属性。在表单提交时,我们通过JavaScript获取到用户的操作数和运算符,然后调用相应的JavaBean方法处理计算逻辑,最后通过`<%= %>`标签输出计算结果。 希望这篇文章能够帮助你实现一个简单的Java Web计算器。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值