Java WEB 第6章 登录功能实现-页面中错误提示

第6章 登录功能实现-页面中错误提示

6.1 涉及的技术知识点:

  • 请求重定向  
  • 请求转发  
  • Jsp页面  
  • EL表达式  
  • JS简单应用

6.2 请求重定向 redirect

  • Servlet接收到浏览器端请求并处理完成后,给浏览器端一个特殊的响应,这个特殊的响应要求浏览器去请求一个新的资源,整个过程中浏览器端会发出两次请求,且浏览器地址栏会改变为新资源的地址。
  • 重定向的情况下,原Servlet和目标资源之间就不能共享请求域数据了
  • 实现重定向的API

6.3 请求转发

  • Servlet接收到浏览器端请求后,进行一定的处理,先不进行响应,而是在服务器端内部“转发”给其他Servlet程序继续处理。在这种情况下浏览器端只发出了一次请求,浏览器地址栏不会发生变化,用户也感知不到请求被转发了。
  • 转发请求的Servlet和目标Servlet共享同一个request对象。
  • 实现转发的API

6.4 重定向与转发的区别

6.5 JSP页面

  • JSP全称Java Server Pages,顾名思义就是运行在java服务器中的页面,也就是在我们JavaWeb中的动态页面,其本质就是一个Servlet。
  • 其本身是一个动态网页技术标准,它的主要构成有HTML网页代码、Java代码片段、JSP标签几部分组成,后缀是.jsp
  • 相比于Servlet,JSP更加善于处理显示页面,而Servlet跟擅长处理业务逻辑,两种技术各有专长,所以一般我们会将Servlet和JSP结合使用,Servlet负责业务,JSP负责显示。
  • 一般情况下, 都是Servlet处理完的数据,转发到JSP,JSP负责显示数据的工作
  • JSP的基本语法:
    • JSP的脚本元素
    • 脚本片段是嵌入到JSP中Java代码段,格式以<%开头,%>结尾,两个%号之间就可以编写Java代码了
    • JSP的表达式
    • JSP表达式用来直接将Java变量输出到页面中,格式以<%=开头,以%>结尾,中间是我们要输出的内容

  • JSP的隐含对象
    • out(JspWriter):相当于response.getWriter()获取的对象,用于在页面中显示信息。
    • config(ServletConfig):对应Servlet中的ServletConfig对象。
    • page(Object):对应当前Servlet对象,实际上就是this。
    • pageContext(PageContext):当前页面的上下文,也是一个域对象。
    • exception(Throwable):错误页面中异常对象
    • request(HttpServletRequest):HttpServletRequest对象
    • response(HttpServletResponse):HttpServletResponse对象
    • application(ServletContext):ServletContext对象
    • session(HttpSession):HttpSession对象
      • EL表达式
      • EL是JSP内置的表达式语言,用以访问页面的上下文以及不同作用域中的对象 ,取得对象属性的值,或执行简单的运算或判断操作。EL在得到某个数据时,会自动进行数据类型的转换。
      • EL表达式用于代替JSP表达式(<%= %>)在页面中输出操作
      • EL表达式仅仅用来读取数据,而不能对数据进行修改。
      • 使用EL表达式输出数据时,如果有则输出数据,如为null则什么也不输出。
      • EL表达式的语法:

       

      • EL取值的四个域:

      pageScope

      requestScope

      sessionScope

      applicationScope

       

6.6 页面中错误提示的功能效果

6.7 JavaScript

    • 1)  在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。Netscape在最初将其脚本语言命名为LiveScript,因为NetscapeSun合作,网景公司管理层希望它外观看起来像Java,因此取名为JavaScript。
    •  2)  特性
    • 脚本语言。JavaScript是一种解释型的脚本语言,C、C++、Java等语言先编译后执行, 而JavaScript是在程序的运行过程中逐行进行解释。
    • 基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
    • 简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言。
    • 动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。
    • 跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提是机器上的浏览器支 持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。
    •   3)  编写位置
    • 编写到HTML中<script>标签中。
    • 写在外部的.js文件中。然后通过script标签引入。

              4)  JavaScript的事件驱动

  • 用户事件:用户操作,例如单击、鼠标移入、鼠标移出等
  • 系统事件:由系统触发的事件,例如文档加载完成。
  • 常用的事件:
  • onload

    onclick

    onblur

    onfocus

    onmouseover

    onmouseout

    5)   BOM
    • Borwser Object Model 浏览器对象模型
    • 浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象
    • 常用的对象(window的子对象)

    document   history    location    screen   navigator    frames

          6)   DOM

  • Document Object Model 文档对象模型
  • document对象: window对象的一个属性,代表当前HTML文档,包含了整个文档的树形结构。获 取document对象的本质方法是:document,而“window.”可以省略。
  • DOM树
  • 元素查询

    功能

    API

    返回值

    根据id值查询

    document.getElementById(“id值”)

    一个具体的元素节点

    根据标签名查询

    document.getElementsByTagName(“标签名”)

    元素节点数组

    根据name属性值查询

    document.getElementsByName(“name值”)

    元素节点数组