JSP页面:
jsp 是一种动态页面,html 页面和 jsp页面最大的区别是:html 是一种静态页面,在 html 中只
能定义 css、js 等,在 jsp 中除了可以定义 css、js 之外还可以定义 java 代码, 还可以在 jsp 中使
用 el 表达式和 jstl 标签,但是java 代码必须使用<%java代码%>
第一次访问一个jsp页面的步骤如下:
1、将范围的jsp 页面转换成对应的 *.java 文件
2、将转换后的 *.java 文件编译成 *.class文件
3、将 *.class 文件解释成 *.html 页面响应给浏览器
第二次访问 jsp 页面如下:
1、jsp 就被修改了,此时重新执行上面的三个步骤
2、jsp 没有被修改,直接执行第三个步骤
实际上jsp 是会被转换成一个特殊的 servlet 。
JSP 的注释:
在jsp中可以出现四种注释:
1、原有的 html 的注释:
2、单行注释://注释的内容(需要在<%%>中定义)
3、多行注释:/*注释的内容*/ (需要在<%%>中定义)
4、jsp特有注释:<%--注释内容--%>
jsp 的注释在页面使用查看源码的方式不能看见,html 的注释在页面使用查看源码的方式可以看见。
包含概念:
在一个项目中会出现多个页面,但是这些也想的头部信息和尾部信息可能是一样的,此时
就需要在多个页面中编写相同额代码,这样就出现了代码的重复现象,最好的解决方案是将头部信息
和尾部信息定义到独立的文件中,之后再需要的地方包含就行。jsp中有两种包含方式:
1、静态包含:<%@ include file="被包含文的件路径"%>
先将需要导入的文件包含之后再编译成一个 *.class 文件。
2、动态包含:<jsp:include page="被包含的文件路径"/>
如果被包含的文件是静态资源,和静态包含一样,先将要导入的资源包含到目标页在进行编译。
如果包含的是动态资源 *.jsp ,则会先将被包含的资源编译成独立的 class 文件之后再进行包含。
el 表达式概念:
Expression Language 表达式语言,是一种在jsp页面获取数据的简单方式(只能获取
数据,不能设置数据)在jsp2.0 开始引入概念,主要功能是取得保存在内置对象中的数据显示到 jsp 页面上。
el表达式中的运算符:
在 el 中的 + 号只有数学运算功能,没有连接功能。
关系运算符:
或者 gt ,列:${8>9} 或者 ${8 gt 9}
= 或者 ge,列:${17>=9} 或者 ${17 ge 9}
< 或者 lt,列:${3<9} 或者 ${3 lt 9}
<= 或者 le,列:${5<=7} 或者 ${5 le 7}
== 或者 eq,列:${3==3} 或者 ${3 eq 3}
!= 或者 ne,列:${5!=3} 或者 ${5 ne 3}
逻辑运算符:
&& 或者 and,列:${false && false} 或者 ${false and false}
|| 或者 or,列:${true || false} 或者 ${true or false}
! 或者 not,列:${!true} 或者 ${not true}
特殊运算符:
empty 判断 EL表达式中的表达式是否为空。列:${empty sessionScope.user}
" . " 作用相当于执行Bean 中的get 方法。列:${sessionScope.user.userName}
[] 的作用跟“ . ”运算符一样,只不过 [ ] 可以执行一些不规则的标识符。列:${user["score-math"]}