关于JavaJsp

1、Jsp是一种建立在Servlet规范提供的功能之上的动态网页技术,允许在网页文件中嵌入java代码和jsp标记。

Java 服务器页面 (Java Server Page ,JSP) ;扩展名 .jsp

2、jsp的执行过程

    (1)Jsp文件在用户第一次请求时,会被编译成Servlet,然后由这个Servlet处理用户的请求,所以jsp可以看成是运行时的Servlet

    (2)Jsp容器(也就是Servlet容器)管理jsp页面声明周期分为两个阶段.即转换阶段和执行阶段

    (3)当有一个对jsp页面的请求到来时,jsp容器检查jsp页面的语法是否正确,将jsp页面转换为Servlet源文件,然后调用javac命令编译Servlet源文件生成字节码文件.这是转换阶段

    (4)Servlet容器加载转换后的Servlet类,这是执行阶段

3、JSP 页面的元素

    静态内容  ------------→  HTML、js、css静态文本

    指令      ------------→ 以 <%@  开始,以 %>  结束

    表达式    ------------→ <%=Java表达式 %> *

    代码块    ------------→ <% Java 代码(变量:_jspService方法的局部变量) %>

    声明      ------------→ <%! 函数或方法、变量(成员变量) %> *

    动作      ------------→以  <jsp: 动作名   开始,以  </jsp:动作名>   结束

    注释      ------------→<!-- 这是注释,但客户端可以查看到 -->    <%-- 这也是注释,但客户端不能查看到 --%> *

4、JSP 指令       用来设置与整个 JSP 页面相关的属性。

<%@ page ... %>     定义页面的依赖属性,比如脚本语言、error 页面、缓存需求等等

<%@ include ... %>    包含其他文件

<%@ taglib ... %> 引入标签库的定义,可以是自定义标签

4、jsp的九大内置对象

    request             HttpServletRequest 类的实例

    response      HttpServletResponse 类的实例

    out                 PrintWriter 类的实例,用于把结果输出至网页上

    session             HttpSession 类的实例

    application         ServletContext 类的实例,与应用上下文有关

    config         ServletConfig 类的实例

    pageContext      PageContext 类的实例,提供对 JSP 页面所有对象以及命名空间的访问

    page           类似于 Java 类中的 this 关键字

    Exception     Exception 类的对象,代表发生错误的 JSP 页面中对应的异常对象

    JSP 作用域包括 page、request、session 和 application

5  EL表达式

    EL 为表达式语言(Expression Language),可以简化对变量的对象的访问

    语法 :${EL Expression}所有的表达式以”${”开始,以”}”结束。

    是否启用EL表达式  isELIgnored ="true|false"

    JSP EL 表达式用于以下情形

        静态文本

        标准标签和自定义标签

        EL不能在脚本元素中使用   脚本元素不是指JavaScript脚本,而是 <% Java 代码 %>                                                                                       JavaScript脚本在jsp中属于静态内容

    EL使用”[  ]”和”.”操作符来访问数据

    对于连字符(-)或者其它特殊字符的字符串只能用“[  ]”操作符,而不能用“.”操作符,这也是“[  ]”和“.”操作符的区别  如 ${header["User-Agent"]}

 

    EL表达式的操作内容可以是:常量、变量、jsp隐含对像

    EL表达式还提供了对操作内容的运算:属性取值、运算、逻辑运算

    EL表达式的操作结果会自动输出到输出流对像中

    EL 表达式只能通过内置对象取值,也就是只读操作

    EL 运算符

    (1)、EL 算术运算符 + - * /(div)  %(mod)

    (2)、EL 关系运算符   ==(eq)  !=(ne)  <(lt) <=(le)  >(gt)  >=(ge)

    (3)、EL 逻辑运算符  &&(and)    ||(or)   !(not)

    (4)、EL 其他运算符 

            1) empty 运算符     用来判断值是否为null 或空的

            2) 条件运算符       ${ A ? B : C}意思是说,当A 为true 时,执行B;而A 为false 时,则执行C

            3) ( ) 括号运算符   用来改变执行优先权,例如:${ A * (B+C) }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值