session

session_cache_limiter(private,must-revalidate)是什么意思

自闭症网瘾萝莉.ら 提交于 2020-02-17 23:14:41
session_cache_limiter(private,must-revalidate)是什么意思 表义一: 指定会话页面所使用的缓冲控制方法: 当session_cache_limiter('private')时,用处是让表单history.go(-1)的时候,填写内容不丢失!就避免页面失效的警告! 表义二: 这个会话与header('cache-control:private,must_revalidate');效果相同 但是要值得注意的是session_cache_limiter()方法要写在session_start()方法之前才有用; 支持页面回跳详解,session_cache_limiter()的使用详解 现在表单的填写,我们可以用AJAX对用户随时进行验证,进行友好的提示,但是在用户没有留意AJAX友好提示,提交了错误的表单,跳回原页,而填写的信息却全部丢失了。要支持页面回跳,有以下的办法: 1.使用session_cache_limiter方法: Php代码 session_cache_limiter( 'private,must-revalidate' ); session_cache_limiter('private,must-revalidate'); 但是要值得注意的是session_cache_limiter()方法要写在session_start(

Flask学习笔记09之session

送分小仙女□ 提交于 2020-02-17 23:05:22
session就是dict ,存放在内存中 当请求刚到来:flask读取cookie中session对应的值(网络请求中携带),将该值解密并反序列化成字典,放入内存以便视图函数使用。 视图函数: @app.route('/index') def ses(): session['name'] = 'admin' session['age'] = 456 del session['age'] return "session" 当请求结束时,flask会读取内存中字典的值,进行序列化+加密,写入到用户cookie中。 session的一些其它配置 SESSION_COOKIE_NAME = 'session' SESSION_COOKIE_DOMAIN = None SESSION_COOKIE_PATH = None SESSION_COOKIE_HTTPONLY = True SESSION_COOKIE_SECURE = False SESSION_REFRESH_EACH_REQUEST = True #session的过期时间 PERMANENT_SESSION_LIFETIME = timedelta(hours=1) settings.py from datetime import timedelta class Base(object): """共有的配置放在基类里面""

C 标签使用

不问归期 提交于 2020-02-17 16:02:24
JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签: out、 set、 remove、 catch 2.流程控制标签: if、 choose、 when、 otherwise 3.循环标签: forEach、 forTokens 4.URL操作标签: import、 url、 redirect 使用标签时,一定要在jsp文件头加入以下代码: <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 下面分别对这些标签进行说明: 1. <c:out> 用来显示数据对象(字符串、表达式)的内容或结果 使用Java脚本的方式为:<% out.println("hello") %> <% =表达式 %> 使用JSTL标签:<c:out value="字符串">,例如: <body> <c:out value="&lt要显示的数据对象(未使用转义字符)&gt" escapeXml="true" default="默认值"></c:out><br/> <c:out value="&lt要显示的数据对象(使用转义字符)&gt" escapeXml="false" default="默认值"></c:out><br/> <c:out value="${null}" escapeXml="false"

websocket采坑记

瘦欲@ 提交于 2020-02-17 14:29:04
项目中想用做个实时统计,像是110警情大屏那种,所以用到了websocket,结果踩了不少坑,再次记录下。 环境:spring,springMVC(4.2.4.RELEASE),tomcat7 问题1:session对象是不一样的 http的时候,是javax.servlet.http.HttpSession 而websocket的时候javax.websocket.Session http的session一般用于保存用户信息,根据用户,http请求的时候携带Cookie:JSESSIONID,进行区分,实现多例。http的session的getId()就是JSESSIONID,比如BD70D706E4B975EA5CE7418152D3F8DC这种。 而websocket的Session则有很多用处,保存信息,发送请求,可以说websocket前后端交互用的变量和方法,都保存在websocket的Session里。 同时,websocket的Session是根据前端创建连接多例的,也就是说,前端每new WebSocket进行open一次,就创建一个websocket的Session。websocket的Session的getId()是从1开始递增的序列。 关于http的session和websocket的session同步的问题。 场景:系统本身是标准的web项目

Mybatis--生命周期作用域

戏子无情 提交于 2020-02-17 14:27:51
1.生命周期和作用域:     1.SqlSessionFactoryBuilder 创建完成 SqlSessionFactory 就可以释放了     2.SqlSessionFactory:         相当于保存数据库会话的线程池。         一旦创建就应该在程序的运行期间一致存在。          不得丢弃和创建另一个实例 。         使用单例或者静态单例创建。     3.SqlSession :           try( session=SqlSessionFactory.openSqlsession() ){             session 作用域 (花括号范围)           } 1. try 后面接括号 的方式:JDK7 定义的 用来 对IO操作进行自动释放 操作   try(sqlsession=sqlsessionfactory.opensession()){ 定义 代码,会话的范围 } 来源: https://www.cnblogs.com/chencn/p/12321499.html

Tmux 使用教程 - Linux

无人久伴 提交于 2020-02-17 09:11:04
转载自: Tmux 使用教程 分享按钮 作者: 阮一峰 链接: https://www.ruanyifeng.com/blog/2019/10/tmux.html 日期: 2019年10月21日 一、Tmux 是什么? 1.1 会话与进程 命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。 用户与计算机的这种临时的交互,称为一次"会话"(session) 。 会话的一个重要特点是,窗口与其中启动的进程是 连在一起 的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。 一个典型的例子就是, SSH 登录 远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。 为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。 1.2 Tmux 的作用 Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。 (1)它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。 (2) 它可以让新窗口"接入"已经存在的会话。 (3)它允许每个会话有多个连接窗口,因此可以多人实时共享会话。 (4

11.Java邮件发送

心不动则不痛 提交于 2020-02-17 02:40:02
一.邮件收发 1.什么是电子邮件 2.传输协议 3.邮件收发原理 二.开发 1.导入jar包 mail.jar activation.jar <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> <version>1.1.1</version> </dependency> 注:QQ邮箱开启POP3和SMTP服务还有授权码 2.案例一:发送简单邮件 1 import com.sun.mail.util.MailSSLSocketFactory; 2 3 import javax.mail.*; 4 import javax.mail.internet.InternetAddress; 5 import javax.mail.internet.MimeMessage; 6 import java.io.UnsupportedEncodingException; 7 import java.security

Mybatis初步总结

只愿长相守 提交于 2020-02-17 01:40:22
Mybatis 总结 一些总结: Mybatis操作的是持久层,Mybatis和hibernate一样也有orm(object relational mapping)对象关系映射 Mybatis的主要对象:sqlsessionfactory、sqlsession、executor 四大核心对象:StatementHandler(负责sql语句)、PrameterHandler(负责sql中的参数)、executor (负责sql执行)、ResultSetHandler(负责结果集) 四大处理器:StatementHandler、PrameterHandler、ResultSetHandler、TypeHandler 一些约定: 1.mapper里面的标签的parameterType和resultType只能各有一个 2.增加对象的时候可以写对象,当parameterType的类型是简单类型(8大基本数据类型+String) 则#{}里面可以写任意东西,如果不是简单类型则必须写类的属性名 3.查询所有返回结果集的时候,返回值类型也写单个对象的完全限定名 开发Mybatis步骤: 1.写一个conf.xml配置文件(写数据库信息和需要加载的类映射文件) 2.写一个表 3.写对应的类 4.类对应的映射文件(里面写基本的sql语句包括select\inster\delete\update)

MySQL锁与事务隔离级别

主宰稳场 提交于 2020-02-16 22:39:21
1、概述 (1) 锁的定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。 在数据库中,除了传统的计算资源(如CPU、RAM、IO等)的争用以外,数据也是一种供需要用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 (2) 锁的分类 从性能上分为 乐观锁 和 悲观锁 乐观锁:每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据。 例子:① 在数据库的表中加一个version字段,用来记录每次修改数据的版本号,防止并发修改数据出错;② CAS原子类。 悲观锁:每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。 例子:synchronized关键字。 从对数据库操作的类型分为 读锁 和 写锁 (都属于悲观锁) 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。 写锁(排它锁):当前写操作没有完成前,它会阻断其他session的写锁和读锁。(session:数据库连接) 从对数据操作的粒度分为 表锁 和 行锁 。 2、表锁与行锁 (1) 表锁( 偏读 ) 表锁偏向MyISAM存储引擎 ,开销小,加锁快,无死锁

为什么不同用户登录同一个页面,看到的是不同数据

醉酒当歌 提交于 2020-02-16 19:32:46
大家都知道,比如我们登录一个OA网站,看到的数据和同事的是有不同的,简单一想,是因为我们的登录账户不同,但是技术上是怎么实现的呢? 尤其是login后,我们访问的都是同一个URL,为什么页面上展示的数据会不同呢? 技术初探 最近小编亲自编写了一个web应用,终于略懂一二,和大家分享。 后台会根据请求所关联的用户去过滤数据 用户在浏览器中输入URL,后台根据URL匹配处理他的视图,返回属于该用户的数据。 为什么在浏览器中输入URL,后台程序能知道这次请求所关联的用户是谁?请看下一节,技术细探 技术细探(Cookie/Session机制详解) 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。 详情推荐大家阅读:https://www.cnblogs.com/zhouhbing/p/4204132.html 这边提炼几个关键点: HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话。 目前Cookie已经成为标准,所有的主流浏览器都支持Cookie。 Cookie实际上是一小段的文本信息。客户端请求服务器