JSP、EL的快速入门

1、什么是JSP?html

  HTML+Java代码+jsp标签=jsp。java

  在静态页面上添加动态信息就能够了,若是是Servlet还须要一行一行的输出。服务器

  一般在前台开发人员给出静态页面后,后台开发人员只须要在静态页面上添加信息便可,而不用再使用Sevlet一行一行的去输出了。jsp


2、JSP的真身:Servletide

  当客户请求的是JSP页面的时候,服务器会查看JSP对应的Servlet是否存在,若是存在,那么直接调用Sevlet的service()方法来处理请求。若是不存在,那么服务器会先把JSP编译成.java文件,而后再把.java文件编译成.class文件,而后调用service()方法。当这个jsp页面,第二次处理请求时,就直接调用真身的sercie()方法了。spa

wKiom1jIiueQ8RIeAAA8ik_6opE332.png

  JSP是servlet,JSP与咱们编写的Servlet有什么不一样呢?一般咱们编写的Servlet就不要输出HTML代码了,而是转发到JSP页面。htm

  即Servlet再也不负责显示页面,而由JSP来完成。Servlet专一于控制层的内容。blog

  在"真身"中,全部的静态内容会被输出。例如<html>是静态内容,它对应"真身"中的out.write("<html>");ip


3、JSP的脚本元素
ci

  JSP中的Java代码块就是最多见的动态信息,它分为三种:

    <%...%>:代码片断。代码片断会原模原样的出如今“真身”中,不会有变更。正常的Java代码均可以在代码片断中出现。

    <%=...%>:表达式。表达式会在“真身”中输出,例如:<%=a%>,对应真身中的out.print(a)。只能出现变量、常量,以及有返回值的方法调用,而不能出现分号!即在out.println()的合法参数均可以。

      <%=a%>对应out.print(a);

      <%="a"%>对应out.print("a");

      <%=fun()%>对应out.print("fun()");

      <%=a;%>对应out.print(a;);出错

      <%=System.out.print("hello")%>对应out.print("System.out.print("hello")"),出错。

    <%!...%> :声明。声明对应“真身”中的属性和方法。


4、EL

  JSP2.0要把HTML和CSS分离、要把HTML和JavaScript分离、要把Java代码块替换成标签。标签的好处就是非Java人员均可以使用。

  JSP2.0--纯标签页面,即:不包括<%...%>、<%=...%>、<%!...%>

  EL(Expression Language)是一门表达式语言,它杜继英<%=...%>。咱们知道在JSP页面中,表达式会被输出,因此EL表达式也会被输出。

  EL表达式的格式::${...},例如${1+2}。

相关文章
相关标签/搜索