1.jsp指令概述
jsp指令的格式:<%@指令名 attr1="" attr2=""%>,一般都会把jsp指令放到jsp文件的最上方,但这不是必须的
JSP中有三大指令:page,include,tablib,最为常用,也最为复杂的就是page指令了。
2.page指令
page指令是最为常用的指定,也是属性最多的属性!
page指令没有必须属性,都是可选属性 <%@page%>,没有给出任何属性也是可以的!
在jsp页面中,任何指令都可以重复出现!
import:导包!可以多次出现
errorPage:当前页面如果抛出异常,那么要转发到哪一个页面,由errorPage来指定‘
iserrorPage:它指定当前页面是否为处理错误的页面!这个页面会设置状态码为500!
2.include-->静态包含
与RequestDispatcher的include()方法的功能相似
作用:把页面分解了,使用包含的方式组合在一起,这样一个页面中不变的部分,就是一个独立的jsp,而我们只需要处理变化的页面。
taglib-->导入标签库
两个属性:
perfix:指定标签库在本页中的前缀!由我们自己来起名称
uri:指定标签库的位置
JSP九大内置对象
1.什么事jsp九大内置对象
在jsp中无需创建就可以使用的9个对象,它们是:
- out
- config
- page
- pageContext
- exception
- request
- response
- application
- session
在这9个对象中有很多极少会被使用的,例如:config page exception
在这9个对象中有两个对象不是每个jsp页面都可以使用的exception session
在这9个对象中有很多前面已经学过的对象:out request response application session config
jsp动作标签
这些jsp的动作标签,与html提供的标签有本质的区别
动作标签是有tomcat(服务器)来执行!他与java代码一样,都是在服务器端执行的
html由浏览器来执行!
<jsp:forward>:转发
<jsp:include>:包含
<jsp:param>:它用来作为forward和include的子标签!用来给转发或者包含的页面传递参数!
JavaBean
javaBean的规范:
1.必须要有一个默认的构造器
2.提供get/set方法,如果只有get方法,那么这个属性是只读属性!
3.属性:有get/set方法的成员,还可以没有成员,只有get/set方法。属性名称由get/set方法来决定!而不是成员名称!
内省:
内省类-->Bean信息-->属性描述符-->属性的get/set对应的Method-->可以反射了
commons-beautils,它是依赖内省完成!
jsp中与javaBean 相关的标签!
<jsp:useBean> 创建或查询bean
<jsp:setProperty>设置属性
<jsp:getProperty>获取属性
EL表达式
1.EL是jsp内置的表达式语言!
jsp2.0开始,不让在使用java脚本,而是使用el表达式和动态标签来代替java脚本!
2.EL表达式来读取四大域
{pageScope.xxx}指定获取域属性
EL可以输出的东西都在11个内置对象中