IE盒子

搜索
查看: 147|回复: 0

Java--68天 JSP技术完结.

[复制链接]

2

主题

3

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-1-19 19:20:14 | 显示全部楼层 |阅读模式
第89次(JSP)

学习主题:JSP

学习目标:

1 掌握 JSP访问原理
2 掌握JSP引擎
3 掌握JSP指令

对应视频:

http://www.itbaizhan.cn/course/id/85.html
对应作业

  • jsp的概念特点和第一个jsp页面

    • 简述什么是jsp


JSP全名为Java Server Pages,中文名java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导,许多公司参加与一起建立的一种动态网页技术标准.

  • jsp的访问原理图

    • 简述Jsp的访问原理流程


浏览器发起请求,请求JSP,请求被Tomcat服务器接收,执行JSPServlet将请求的JSP文件转义为对应的java文件(也是Servlet),然后执行转义好的java文件.

  • Jsp的引擎是?

JspServlet:jsp引擎.
把要访问的jsp文件,编译成java文件.

  • jsp的访问原理总结

    • 视频中的注意是什么,请写出


Jsp中可以执行 java,HTML,scc,js多种语言,当编写java代码时会被原样输出,其他语言会通过JSPServlet引擎加工后在执行.




  • jsp的page指令

    • 请列出视频中讲解的page指令的属性及作用


<%@page language="java" %><%--声明转义的语言 --%>
<%@page session="true" %><%--设置是否开启session对象 --%>
<%@page import="java.util.*,java.lang.*" %><%--声明转译时导入的java包文件--%>
<%@page pageEncoding='utf-8' %><%--设置jsp的数据保存的编码格式 --%>
<%@page contentType="text/html; charset=utf-8"  %><%--设置数据相应的编码格式 --%>
<%@page isErrorPage="false"  %><%--默认为false true表示开启Exception异常对象的使用--%>
<%@page errorPage="index.jsp"  %><%--页面发生错误时转向的页面--%>
  Page指令的作用:设置jsp转译的时候的一些配置信息.


  • 请说明page指令session属性的作用

<%@page session="true" %><%--设置是否开启session对象 --%>
设置是否开启session对象

  • jsp的局部代码块和全局代码块和脚本段语句

    • 局部代码块和全局代码和脚本段语句的声明分别是


<%!
   全部代码
%>
<%
   局部代码
%>
<%=add() %>  脚本段语句   这里输出add()的返回值
全局和局部以是否有!(感叹号)区分

  • 局部代码块声明和全局代码块声明的区别是?

        局部代码声明是在_jspService方法中声明,所以不可以声明方法,而且声明的变量也只能在局部代码块中使用.
        全局代码块.相当于在当前jsp对应的java文件中类中声明的,可以声明变量和方法,声明的变量为全局变量.方法必须在局部代码块中调用才能有作用.
第90次(JSP)

学习主题:JSP

学习目标:

1 掌握JSP注释
2掌握JSP引入
3 掌握JSP内置对象
4 掌握JSP四大作用域
5 掌握servlet和jsp中的路径问题
对应作业

  • jsp的注释

    • jsp的注释


HTML注释:会被转译也会被响应给浏览器,但不会被浏览器执行.
CSS注释: 会被转译也会被响应给浏览器,但不会被浏览器执行.
JS注释: 会被转译也会被响应给浏览器,但不会被浏览器执行.
Java注释:会被转译,但不会执行

  • jsp的注释<%-- --%>的特点是什么

格式:<%-- 注释内容 --%> 内容不会被转移,更不会被执行.

  • jsp的静态引入和动态引入

    • 静态引入和动态引入的标签分别是?


<!-- 静态引入.-->
        <%@include file="index.jsp" %>
<%--动态引入 --%>
<jsp:include page="index.jsp"></jsp:include>


  • 静态引入和动态引入的区别是?

静态引入:

  • 会将两个jsp合拼成一个效率相对较高
  • 因为会合拼成一个jsp,所以不要再两个jsp中声明同名的变量否则会报错
动态引入:

  • 两个jsp各级会生成独立的java文件,不必担心变量名重复问题
  • 效率可能会低于静态引入
作用:减少了代码的冗余.实现资源的共享

  • jsp的forward标签学习

    • forward标签的作用及使用注意事项是?


<jsp:forward page="text.jsp">
<jsp:param value="12321312" name="uname"/>
</jsp:forward>
作用:从一个jsp页面跳转到另一个jsp页面
特别注意:标签中除了<jsp:param>标签(用于传递数据),不允许出现任何内容,甚至空格.

  • jsp的内置对象学习

    • jsp的九大内置对象分别是?。


  <!-- 9个对象的使用  这9个对象为内置对象可以直接使用-->
<!-- pageContext:页面上下文对象,此对象封存了下面的8个对象.
注意:一个jsp页面一个pageContext对象,pageContext对象每次请求都会重新创建.
          作用域:当前jsp页面
          session:解决了同一个用户请求之间的数据共享问题.
          application:ServletContext对象,解决了不同用户之间的数据共享问题
          config:ServletConfig对象,使用此对象完成资源的初始化.
          out:响应数据的对象,较于response对象,out对象底层使用了缓冲区,out对象的效率高于response
          page:代表当前被执行的jsp专业的java文件的对象
          request:封存了请求相关数据,由服务器创建
          response:响应对象,设置编码格式.


  • jsp中的四个作用域对象是?

PageContext 作用域最小, 当前jsp页面
Request 一次请求.
Session: 一个会话(一个用户)
Application:不同用户


  • jsp和Servlet的职责讲解

    • 简述jsp与servlet的职责


Jsp:负责页面展示
Servlet:负责逻辑处理

  • servlet请求转发和重定向jsp页面以及相对路径讲解

    • 使用相对路径请求转发和重定向会出现什么问题?


        一定要搞清楚项目所存在的路径.
分清项目根目录和服务器更目录

  • Servlet中请求转发和重定向的绝对路径

    • 简述为什么请求转发和重定向的路径最好写成绝对路径


当servlet的别名是一个目录时,相对路径就会发生错误.

  • 说明请求转发和重定向路径中第一个斜杠的含义

在重定向中 第一个斜杠”/” ---服务器根目录(如下)
这里这是到达了 webapps 服务器根目录下



请求转发中第一个斜杠”/” ---项目根目录(这里用text项目举例)
这里到达了 text项目根目录下



这两句到达的位置一样.
//重定向转发
                        resp.sendRedirect("/text/index.jsp");
//请求转发
                req.getRequestDispatcher("/index.jsp").forward(req, resp);

相对路径(当这里设置的为对个斜杠时,相对路径就会报错)



相对路径




  • jsp中的绝对路径和basePath方式

    • 简述jsp中的路径的第一个斜杠的含义


第一个斜杠代表:服务器根目录


  • 简述jsp中的basePath设置的作用

BasePath:当前项目的根目录.



                basePath:存储的是当前项目下的根目录
                <base href=”<%=basePath>”>:
                相当于将当前页面的词源默认定位从项目根目录开始查找.我们就不需要在从服务器根目录开始写目录了(不用写”/”)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表