• jsp简介


    什么是Java Server Pages?

    JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。

    JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

    JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

    JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。

    为什么使用JSP?

    JSP程序与CGI程序有着相似的功能,但和CGI程序相比,JSP程序有如下优势:

    • 性能更加优越,因为JSP可以直接在HTML网页中动态嵌入元素而不需要单独引用CGI文件。
    • 服务器调用的是已经编译好的JSP文件,而不像CGI/Perl那样必须先载入解释器和目标脚本。
    • JSP 基于Java Servlet API,因此,JSP拥有各种强大的企业级Java API,包括JDBC,JNDI,EJB,JAXP等等。
    • JSP页面可以与处理业务逻辑的 Servlet 一起使用,这种模式被Java servlet 模板引擎所支持。

    最后,JSP是Java EE不可或缺的一部分,是一个完整的企业级应用平台。这意味着JSP可以用最简单的方式来实现最复杂的应用。

    JSP的优势

    以下列出了使用JSP带来的其他好处:

    • 与ASP相比:JSP有两大优势。首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用。第二点就是JSP易于移植到非MS平台上。
    • 与纯 Servlet 相比:JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句。
    • 与SSI相比:SSI无法使用表单数据、无法进行数据库链接。
    • 与JavaScript相比:虽然JavaScript可以在客户端动态生成HTML,但是很难与服务器交互,因此不能提供复杂的服务,比如访问数据库和图像处理等等。
    • 与静态HTML相比:静态HTML不包含动态信息。

    JSP的组成  

    html:包含css/js
       java
           java代码段
                  <%java代码%>
           表达式
                 <%=%>

    隐含对象


       对象不须要创建,能够直接调用。   out  、 request   、response;


    指令


       servelt引擎在将.jsp文件转换成servelt源文件时,所做的一些额外的处理。
       语法:
       <%@指令名  属性%>
       经常使用的一些指令
       <%@page  import="java.util.*"%>
       <%@page  pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>
       pageEncoding: jsp文件在保存的时候须要依照什么样的编码格式来保存。
       contentType:等同于response 的setContentType()


    JSP的运行


      jsp引擎 (servelt引擎 )会将jsp文件转换为一个servelt源文件,再去  调用其service方法

    转换


      html:放到service中,使用write输出
      java:   放到service中,照搬
     表达式:放到service中,使用print输出


    转发


       a.同一个应用中,一个组件完毕部分请求,将未完毕的请求转交给另外一个组件继续处理。   在这些组件之间HttpServeltRequest对象共享。
       b.转发步骤:
        //绑定数据到request对象中
        request.setAttribute(String name, Object obj);
        Object  request.getAtrribute(String name);
        假设name没有找到就返回 null
        //创建转发器
        RequestDispatcher   rd=request.getRequestDispatcher("emplist.jsp");
        rd.forward(request, response);
        也能够这样写
         request.getRequestDispatcher("emplist.jsp").forward(request, response);
        
        c.转发和重定向的差别
          1).重定向是这件事已经完毕,转发是这件事完毕了部分。
          2).重定向的地址是随意的,转发是在同一程序内部组件之间。
          3).重定向地址栏中的地址会发生改变,而转发不会改变。

     路径问题

       (1)链接   (2)表单提交    (3)重定向    (4)转发
       相对路径:不以“/”开头的路径
       绝对路径:以“/”开头的路径。
       以(1)、(2)、(3)的情况,绝对路径从应用名開始,(4)绝对路径从应用名之后開始 

  • 相关阅读:
    mybatis
    BeanUtil拷贝
    lombok(@Getter&@Setter)
    fly插件飞向购物车
    原生JavaScript判断是否为邮箱、危险字符、验证长度、验证网址、验证小数、整数、浮点数等常用的 js 验证
    原生JavaScript获取复选框的值
    原生JavaScript获取单选按钮的值
    原生JavaScript实现返回顶部的通用方法
    原生JavaScript获得URL中GET参数值
    原生JavaScript常用的正则表达式
  • 原文地址:https://www.cnblogs.com/hechunhang/p/10746400.html
Copyright © 2020-2023  润新知