java ee jsp_Java EE (JSP 入门)

目录

概述

页面元素及内置对象的概念

Servlet 与 JSP 作用总结

登录案例

一、概述内容

1.1 动态网页的执行原理

使用 Servlet 生成动态网页,任何网页的内容都可以通过 out.priintln() 一行一行的实现

执行步骤:

容器初始化 Servlet实例。根据网页相对应的请求方法,调用与之对应的 doXXX 方法,并初始化请求和响应对象,作为 doXXX 方法的参数使用

执行 doXXX 方法后,将响应对象的数据流写到客户端

游览器将收到的数据进行解析,显示给用户

问题提出?

Servlet 生成动态页面太麻烦了,其实大部分静态内容都是一行一行的输出

解决方案:

Java EE 提供了新的动态页面组件 JSP,可以更加便捷的生成动态网页

1.2 JSP 功能与特性

1.2-1 JSP 功能与特性

JSP (Java Server Page)是 JavaEE 规范中的 Web 组件,用来编写动态页面

JSP 运行在服务端,本质是 Servlet

JSP 文件以 .jsp 为后缀,存放在项目下的 WebContent 目录下

JSP 文件游览器可以直接访问

JSP 文件的内容是 HTML + Java 代码,静态部分使用 HTML 和 文本即可,动态部分使用 Java 代码

1.2-2 JSP 功能与特性

一个标准的 JSP 页面如下

pageEncoding="UTF-8"%>

Insert title here

这里就是 JSP 的静态文本结构,比Servlet 简单多

特别强调,在 JSP 中, 动态部分是写 Java 代码为主 为脚本片段, 为输出表达式

1.3 JSP 的执行流程解析

JSP 的执行流程主要分为三个部分:

首先我们编写好了一个 index.jsp 文件是打开游览器运行,这时候进行了如下过程

Web 服务器找到了 index.jsp,然后会对其进行翻译,生成 index_jsp.java 文件,然后进入工作空间

\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost

编译、服务器(tomcat服务器) 会将 index_jsp.java 编译成 class 文件(类文件),翻译和编译过程遵守 Servlet规范,因此说 JSP 的本质也是 Servlet

运行:实例化并提供服务:服务器实例化类,调用类中的_jspService方法提供服务

我们可以在 生成的 index_jsp.java 文件中下的 _jspService 文件下可以看到一行行我们在 HTML 中编写的代码,全部都在这个文件中变成了 out.println(xxx)。静态内容都是用 out 输出,和 Servlet中输出的是一样的,而且

所有的 Java代码都直接翻译到相对应的位置。

总结一句话,JSP 的本质就是一个 Servlet,不过是服务器翻译生成了 Java 类,不用我们编写而已。但是也并不是 Servlet 没有任何用了,它还可以用来写一些后台逻辑等问题

提问 与 总结

为什么要用 JSP 组件?

答:Servlet 生成动态页面比较繁琐,使用 JSP生成动态页面比较便捷,其中静态内容可以使用 HTML 生成

JSP 执行的流程是什么?

答:JSP 的执行过程 翻译—>编译—>实例化—>提供服务

JSP 的本质就是 Servlet,不过服务器是将 JSP 进行了翻译和编译,可以说 JSP 也是Java 类

二、页面元素及内置对象概念

知识点:

脚本元素

表达式元素

模板元素

声明元素

内置对象概念

2.1 脚本元素

脚本元素可以包含 Java 代码

基本格式:

服务器翻译脚本元素的时候,将其中的 java 代码直接翻译到 _jspService中,如果语法错误,游览器就会显示对应的错误

2.2 表达式元素

表达式元素用来向叶面输出动态内容

格式为:,例如

获取当前的端口

服务器翻译表达式元素时,将把其中Java代码部分的返回值使用out.write语句输出,例如:

out.write("您的IP地址:");

out.print(request.getRemoteAddr() );

2.3 模板元素

模板元素指 JSP 中静态 HTML 或者 XML 内容;

在 JSP 中可以使用注释元素,有三种情况

格式为 ,JSP的注释只有在源代码中可见,翻译时已忽略

在 JSP 中,除了使用 JSP 注释外,还可以使用 HTML 注释

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值