1.jsp的入门

    jsp就是一个servlet,终于会被编译成servlet,jsp:java server pages,java服务器端页面,包括html+java+jsp的指令

    使用servlet向页面输出内容,须要使用字节流或者字符流向页面输出

    jsp:java server pages。java服务器端的页面

    运行过程:放到tomcat work文件夹,在訪问的时候,会编译成servlet。

    嵌入java代码的三种方式

    第一种: <%!

int num=10 %>:表示的一个是成员变量(非常少用)

    另外一种:<%= %>:页面输出内容,它会给我们生成到service里面,向页面输出内容;不能加分号

    第三种:<% %>:也是在service里面载入

    样例:五行五列

        <table border="1" bordercolor="blue">

        <%

        for (int i = 1; i <= 5; i++) {

        %>

        <tr>

        <%

        for (int j = 1; j <= 5; j++) {

        %>

        <td>aaa</td>

        <%

        }

        %>

        </tr>

        <%

        }

        %>

        </table>

2.el的入门

    el的表达式:获取域对象的值

    假设多个域对象名称是同样的。使用el表达式获取范围小的,

    ${requestScope.msg} :得到request域的对象

    ${application.masg}:得到ServletContext的值

    假设没有这个值得到的是null

3.会话管理

    打开浏览器。到关闭浏览器

    购物信息的存储。

    requset域对象的特点:范围一次请求

   

    sevletContext域

       

    用会话来存储购物的技术

    cookie技术:client技术

        使用cookie

       

        首先第一次买东西A。到server得到A,A通过Cookie返回到浏览器内存中,

        第二次买B,携带内存中的A一起发送,到server端,得到A。B,通过Cookie返回到浏览器的内存中

        结算的时候,把内存中的两个值一起发送给server,然后进行结算

session技术:server端的技术

   

4。案例一:实现用户上一次的訪问时间

     方法:

    得到cookie

    Cookie[] getCookies()

    //得到全部cookie

    Cookie[] cookies = request.getCookies();

    通过cookie把值返回到浏览器的内存中(回写)

    addCookie(Cookie cookie)

    使用Cookie的构造

    Cookie(java.lang.String name, java.lang.String value)

    name:cookie的名称

    value:cookie值

5.cookie的api的使用

    getName():得到cookie名称

    getValue():得到cookie的值

    setMaxAge(int expiry):设置cookie的有效时长

    有两种会话方式:

    第一种会话级别:特点是浏览器关闭了,cookie销毁。在默认的情况下会话级别

    另外一种持久性cookie:在一定范围内容cookie会一直有效

    设置有效时长:使用setMaxAge方法设置 setMaxAge(int expiry)參数:秒

    设置有效路径:使用setPath(java.lang.String uri)

    技巧 setPath("/");

    setPath(uri)

    销毁持久的cookie,到时间销毁,setMaxAge(0);

    

    setDomain("www.sina.com");

    和这个域名同样会携带域名信息

    技巧:setDomian(".sina.com");

6.cookie的细节问题

    一个Cookie仅仅能标识一种信息,它至少含有一个标识该信息的名称(NAME)和设置值(VALUE)。

    一个WEB网站能够给一个WEB浏览器发送多个Cookie,一个WEB浏览器也能够存储多个WEB网站提供的Cookie。

    浏览器一般仅仅同意存放300个Cookie,每一个网站最多存放20个Cookie,每一个Cookie的限制大小为4KB。

    假设创建了一个cookie。默认情况下它是一个会话级别的cookie(即存储在浏览器的内存中)。

    用户退出浏览器之后即被删除。若希望浏览器将该cookie存储在磁盘上,则须要使用maxAge和有效路径,

    并给出一个以秒为单位的时间。

删除持久cookie。能够将cookie最大时效设为0,注意。删除cookie时。path必须一致,否则不会删除

8.session的简单介绍

    session是server端技术

    session也是一个域对象

    范围:会话里面

    存值:setAttribute

    取值:getAttribute

    一个浏览器独占一个session对象

10、session创建和销毁

    session创建,运行request方法getSession创建

    session销毁有三种方式

    第一种方式:非正常关闭server

    另外一种方式:session有一个默认的过期时间 30分钟

        <session-config>

        <session-timeout>30</session-timeout>

     </session-config>

    第三种:调用session经行销毁

    清空购物车的功能

    代码

    //得到session

    HttpSession session = request.getSession();

    //销毁session

    session.invalidate();

12、禁用cookie之后session的使用

    session技术也是基于cookie,

    回写浏览器一把钥匙 jsessionid=qwwe233445

   

    禁用cookie之后使用session

    在地址后面;jsessionid=sessionid的值

response. encodeRedirectURL(java.lang.String url)

    用于对sendRedirect方法后的url地址进行重写。

response. encodeURL(java.lang.String url)

    用于对表单action和超链接的url地址进行重写

* 在一般站点中。假设禁用了cookie,直接不让登录

JavaWeb系列之八(Cookie&amp;Session)的更多相关文章

  1. Django-website 程序案例系列-10 cookie 和 session的应用

    cookie:  现在所有网站基本都要开启cookie 客户端浏览器上的一个文件 例如:   {‘key’: 'sefwefqefwefw'} 是一个键值对 简单实现cookie认证: user_in ...

  2. Django学习系列之Cookie、Session

    Cookie和Session介绍 cookie 保存在客户端 session 保存在服务端 session依赖于cookie,比如服务端想往客户端写东西的时候就把cookie写到客户端浏览器 djan ...

  3. JavaWeb -- 会话, Cookie 和 Session

    1. 会话 •Cookie是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器.当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去.这样,web资源处理的就是 ...

  4. JavaWeb(二)cookie与session的应用

    前言 前面讲了一堆虚的东西,所以这篇我们来介绍一下cookie和session的应用. 一.使用cookie记住用户名 1.1.思路介绍 1.2.实现代码 1)LoginServlet package ...

  5. 为什么你学不会递归?告别递归,谈谈我的一些经验 关于集合中一些常考的知识点总结 .net辗转java系列(一)视野 彻底理解cookie,session,token

    为什么你学不会递归?告别递归,谈谈我的一些经验   可能很多人在大一的时候,就已经接触了递归了,不过,我敢保证很多人初学者刚开始接触递归的时候,是一脸懵逼的,我当初也是,给我的感觉就是,递归太神奇了! ...

  6. JavaWeb学习之转发和重定向、会话技术:cookie、session、验证码实例、URLConnection使用(下载网页)(4)

    1.转发和重定向 HttpServletResponse response 转发: RequestDispatcher dispatcher = request.getRequestDispatche ...

  7. JavaWeb之Cookie和Session的区别

    Cookie和Session的区别 一.cookie机制和session机制的区别 ********************************************************** ...

  8. JavaWeb(二)会话管理之细说cookie与session

    前言 前面花了几篇博客介绍了Servlet,讲的非常的详细.这一篇给大家介绍一下cookie和session. 一.会话概述 1.1.什么是会话? 会话可简单理解为:用户开一个浏览器,点击多个超链接, ...

  9. java基础学习:JavaWeb之Cookie和Session

    一.会话概述 1.1.什么是会话? 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话其中不管浏览器发送多少请求,都视为一次会话,直到 ...

随机推荐

  1. python3之模块io使用流的核心工具

    1.io概叙 io模块提供了python用于处理各种类型I/O的主要工具,主要有三种类型的I/O:文本I/O,二进制I/O和原始I/O:这些都是通用类型,各种后备存储可使用其中的每一种类型,所以这些类 ...

  2. 【Alsa】播放声音和录音详细流程

    linux中,无论是oss还是alsa体系,录音和放音的数据流必须分析清楚.先分析alsa驱动层,然后关联到alsa库层和应用层. 二,链接分析: 1)链路一 usr/src/linux-source ...

  3. springboot整合Thymeleaf模板引擎

    引入依赖 需要引入Spring Boot的Thymeleaf启动器依赖. <dependency> <groupId>org.springframework.boot</ ...

  4. Grinder搭建小记与Nduja(这次不待续了)

    Grinder是比较有名的浏览器FUZZ框架,采用ruby语言编写,主要是作为测试框架来使用,在<白帽子讲浏览器安全>一书中作者使用了Nduja生成测试样本来配合Grinder使用.根据网 ...

  5. java多线程整理

    参考博客: http://blog.csdn.net/javazejian/article/details/50878598

  6. C语言:指针实现输出梯形字符串

    用指针实现,实现过程无需将子串复制到一个新的字符串中.(10分) 题目内容: 用指针实现,实现过程无需将子串复制到一个新的字符串中. 输入格式: 字符串 输出格式: 子串 输入样例: computer ...

  7. 【LOJ】#2524. 「HAOI2018」反色游戏

    题解 如果一个联通块是一个树的话,方案数就一种,如果这个联通块还有别的边,那选了一条别的边就会把树上对应路径全部取反,所以方案数是\(2^{m - n + 1}\) 如果联通块数为\(c\)方案数为\ ...

  8. Orchard学习 02、orchard 路由

    Orchard对mvc路由重新做了包装,重写了asp.net的路由模块 一.路由模块类图 1.路由 Descriptor RouteDescriptor是对常规mvc路由的包装类,它的Route属性就 ...

  9. matlab中等间距坐标距离表示不等间距数据值,以及延伸

    1.问题 平时只是用了一下plot的简单画图. x轴或者y轴的大小比例都是按照系统自动的生成. 但是如果出现巨大的比例的时候,如何保证在另一个轴上可以同等机会展示结果呢? 2.程序 这里是自己书写的程 ...

  10. HDU 6249 Alice’s Stamps

    [题目链接] 题目大意: 说有$m$个区间,要求选出不超过$k$个区间,使这些区间覆盖的长度最长,问最长长度是多少. 题解: 所有区间按$R$从小到大排序之后可以进行$dp$. $dp[i][j]$表 ...