1、import="com.lwg.model.Note,com.lwg.model.Contact",中间可以用逗号分隔多个引入的类,注意不是用分号分割;当然也可以多次import
2、include file="header.jsp",注意此处的根"/"指向当前的application根
3、include file="header.jsp",include file="footer.jsp"出现的先后顺序会在页面上展示出来,所以footer.jsp就放到文件最底下
4、通过include指令引用其它jsp页面,可是直接使用其页面的page import的类,不需要重复导入
5、通过jsp:include动作元素 page属性中的根"/"也是指向application根,不是Web容器根
6、jsp:include/forward动作元素传递参数时,参数是通过request对象来传递的,类似于提交表单,
<jsp:include page="/test/middle.jsp">
<jsp:param value="zhangsan" name="name"/>
<jsp:param value="24" name="age"/>
<jsp:param value="成都" name="addr"/>
</jsp:include>
所以传递的参数通过request.getParameter()来获取,而不是通过request.getAttribute()获取.
jsp:param标签只能用于jsp:include/forward标签中传递参数.
7、page对象,每个jsp页面(page)都会转换为servlet,在servlet中page对象就是当前的servlet对象,于是在jsp页面中使用this和page指代同一个对象。//jsp最终都会被web容器转换为servlet,所以请用Java语言来理解jsp页面中的内置对象。
8、pageContext对象,该对象包装了JSP页面的上下文环境信息。通过pageContext对象可以获得其它几个内置对象的引用。//所以从这点来说,pageContext对象的作用比其他几个对象的作用都要大。
application == pageContext.getServletContext(); //true
config == pageContext.getServletConfig();
session == pageContext.getSession();
out == pageContext.getOut();request == pageContext.getRequest();response == pageContext.getResponse();
(1)pageContext中同样可以存储对象,pageContext.setAttribute(String name,Object target);......
(2)可以通过pageContext对象可以访问和存取其它范围内的对象信息,范围包括pageContext本身、request、session、application,pageContext.setAttribute(String name,Object target,int scope);第三个参数在jsp中被定义为一个常量,REQUEST_SCOPT,SESSION_SCOPT,APPLICATION_SCOPT。
(3)pageContext对象还可以控制页面的引用和跳转,pageContext.include(String relativeURL);pageContext.forward(String relativeURL);//这个jsp:include/forward动作元素一样功能效果。
17:11 2012-8-23