黑马程序员JavaEE就业班同步笔记Web核心技术:JSP、EL
与JSTL
Cookie
:就是将数据保存到客户端浏览器的会话技术.
:request.getCookies();
:response.addCookie(Cookie cookie); :
-- /day11 /day11/aaa -- 有效时长.
* 从浏览器获得Cookie * 向浏览器回写Cookie * Cookie的相关的API
* setPath(String path); * setMaxAge(int time);
* setDomain(String domain); * Cookie的分类:
* 会话级别Cookie:会话级别关闭浏览器的时候Cookie就销毁了.默认的 * 持久级别Cookie:设置有效时长的Cookie,关闭浏览器的时候不会销毁的. Session
:就是将数据保存到服务器端的会话技术.基于Cookie回写SessionID的.
* Session存取数据:
* setAttribute(String name,Object value); * getAttribute(String name); * Session作用域:
* session的作用范围:一次会话.(多次请求) * session生命周期:
* 创建:第一次调用getSession的时候创建session。
* 销毁:
* 非正常关闭服务器. * session过期
* 手动调用invalidate方法的时候
1.1 案例一:在JSP的页面中显示商品的信息.
1.1.1 需求:
数据库中存放了很多商品信息,现在将商品的信息全部显示到页面.
1.1.2 分析:
1.1.2.1 技术分析:
【JSP的概述】 ? 什么是JSP:
* Java Server Pages(Java服务器端的页面) ? 为什么要学习JSP:
* SUN公司推出的Servlet自身有缺陷,没有办法与ASP,PHP进行竞争.推出了动态网页开发技术JSP. ? 使用JSP:
* JSP = HTML + Java代码 + JSP自身的东西. ? 执行JSP的过程:
* JSP翻译成Servlet,编译这个Servlet的类,生成class文件.得到执行.
【JSP的脚本】 ? <%! %> ? <% %> ? <%= %> 【JSP的注释】-了解 ? HTML的注释
:
:翻译成Servlet中的成员内容. 定义变量,方法,类. -- 不建议. :翻译成Servlet中service方法内部的内容. 定义类,变量 :翻译成Servlet中service方法中out.print();
? Java代码的注释 :// 单行注释 /*多行注释*/ /** 文档注释 */ ? JSP的注释 【JSP的指令】 ? 指令的语法:
<%@ 指令名称 属性名称=”属性值” 属性名称=”属性值” ...%> ? JSP中有三个指令:page指令, include指令, taglib指令. ? JSP中page指令:<%@ page %> -- 设置JSP的.
* language * contentType
:JSP脚本中使用的语言.现在只能写java.
:设置浏览器打开这个JSP的时候采用的默认的字符集的编码. :<%-- JSP的注释 --%>
* pageEncoding :设置文件保存到本地硬盘,以及生成Servlet后,Servlet保存到硬盘上的编码. * import
:在JSP中引入类对象.但是import可以出现多次.
<%@page import=\ <%@page import=\* extends
:设置
JSP
翻译成
Servlet
后继承的类,默认
值:org.apache.jasper.runtime.HttpJspBase,这个值要想修改,这个类必须是HttpServlet的子类
* autoFlush * buffer * session
:设置JSP的缓存自动刷出.true:自动刷出.
:设置JSP的缓冲区的大小,默认8kb.
:设置在JSP中是否可以直接使用session对象.默认值是true. :设置在JSP中是否忽略EL表达式.默认值是false不忽略. :设置错误友好页面的提示.
:通过这个设置显示JSP的错误信息.
* isELIgnored * errorPage * isErrorPage
* 设置全局的错误友好页面: * 在web.xml中设置:
? JSP中的include指令:指示JSP包含其他的页面.
<%@ include file=\<%@ include file=\
<%@ include file=\
? JSP中的taglib指令:指示JSP引入标签库.
<%@ taglib uri=\标签的URI的路径\标签的别名\【JSP的内置对象(*****)】
? JSP的内置对象:在JSP中可以直接使用的对象. ? JSP中有9大内置对象:
* request
HttpServletRequest
getParameter(),setAttribute(String name,Object value); * response
HttpServletResponse
setHeader(String
name,String value);getOutputStream();getWriter();
* session
HttpSession
setAttribute();getAttribute(); * application
ServletContext
setAttribute();getAttribute(); * page
Object
toString();wait();
* pageContext
PageContext
setAttribute();getAttribute(); * config
ServletConfig
getServletName();getServletContext(); * out
JspWriter
write(),print();
相关推荐: