jsp运行java_JSP基本用法(一)运行机制和语法

一、概述

JSP是一种建立在Servlet规范功能上的动态网页技术,在网页文件中嵌入Java代码和JSP标记用于产生动态内容。

本文简单介绍JSP的运行机制和JSP的语法。

二、JSP的运行机制

JSP文件在用户第一次请求时,会被编译成Servlet,再由这个Servlet处理用户的请求。

ed4c4b3685c6b6af36ad453c06ef19dd.gif

JSP容器管理JSP页面生命周期分为两个阶段:转换阶段和执行阶段,当有一个对JSP页面的客户请求到来时,JSP容器将JSP页面转换为Servlet源文件,然后调用javac工具编译源文件生成字节码文件,接下来,Servlet容器加载转换后的Servlet类,实例化一个对象处理客户端的请求,请求处理完成后响应对象被JSP容器接收,容器将HTML格式的响应信息发送给客户端。

三、JSP的语法

JSP页面一般由元素和模板数据组成。元素是必须由JSP容器处理的部分,模板数据JSP容器不处理。

元素分为三种类型:指令元素、脚本元素和动作元素。

1 指令元素

主要用于为转换Servlet阶段提供整个JSP页面的相关信息,指令不回产生任何输出。

1.1 page指令:作用于整个JSP页面,定义了与页面相关的属性,用于和JSP容器通信

page指令有15个属性:

language="java" //指定在脚本元素中使用的脚本语言

import="com.test.Person" //指定在脚本环境下可以使用的类

extends="className" //指定JSP页面转换后的Servlet类从哪一个类继承

session="true" //指定页面是否参加到HTTP会话中,若为true则在JSP页面中可以使用隐含的session对象

buffer="none" //指定out对象使用的缓冲区大小

autoFlush="true" //指定当缓冲区慢的时候,缓存的输出是否应该自动刷新

isThreadSafe="true"//指定对JSP页面的访问是否是线程安全的

info="info_text" //指定页面的相关信息

errorPage="error_url" //指定当JSP页面发生异常时,将转向哪一个错误处理页面

isErrorPage="false" //指定当前的页面是否是另一个页面的错误处理页面

contentType="text/html; charset=ISO-8859-1" //指定相应页面的MIME类型和字符编码

pageEncoding="ISO-8859-1" 指定页面使用的字符编码,如果设置了该属性,则页面使用该属性指定字符集,没有设置则使用contextType属性指定的字符集

isErrorPage="false" //定义在JSP页面中是否执行或忽略EL表达式

deferredSyntaxAllowedAsLiteral="false" //指示在JSP页面的模板文本中是否允许出现字符序列

trimDirectiveWhitespaces="false" //指示模板中的空白怎么处理

%>

在包com.test包中新建一个Person类,在JSP中使用import引入该类即可使用:

Hello JSP

Person p=new Person("xujian",25);

String name=p.getName();

String age=p.getAge()+"";

String info=name+":"+age;

out.write(info);

%>

1.2 include指令:用于在JSP页面中静态包含一个文件,可以是JSP页面、HTML网页、文本文件或一段Java代码

1.3 taglib指令:允许页面使用用户定制的标签

2 脚本元素

脚本元素包括三个部分:声明、脚本端和表达式:

2.1 声明:用于声明在JSP页面的脚本语言中使用的变量和方法

在JSP中有两种声明变量的方法,一种是在内,一种是在内,它们是有区别的:声明在内的变量和方法是一个类内的变量和方法,也就是成员变量和成员方法。声明在内的变量是一个方法的变量也就是局部变量。另外,如果在内添加一个method()方法那么该程序就会报错,这样声明一个方法等于就是一个类里的方法里又声明了个方法结果肯定是错误的。

57d39d0fa3ff08a235b6d1bd579e05e7.gif

2.2 脚本段:在请求处理期间要执行的Java代码段

Hello JSP

在JSP容器转换JSP页面为Servlet类时,页面中代码段会按照出现的次序依次被转换为_jspService()方法中的代码。

2.3 表达式

表达式脚本元素是Java语言中完整的表达式,在请求处理时计算这些表达式,计算的结果将被转换为字符串,插入到输出流中。

Hello JSP

现在的时间:

3 动作元素

动作元素为请求处理阶段提供信息,有一个包含元素名的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。一个标准动作是嵌入到JSP页面的一个标签,在页面被转换为Servlet期间,当JSP容器遇到这个标签,就用预先定义的对应与该标签的Java代码来代替它。

JSP规范中定义了了20个标准的动作元素。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值