js获取cookie&sql语句无则插入有则修改

获取cookie里的特定键值

先从chrome看看当前cookie里的用户信息
在network里随便点击一个页面获得cookie
在这里插入图片描述
以下代码可以获取userID这个cookie的值

                var prefix = "userid=";
                var start=document.cookie.indexOf(prefix);
                if (start == -1) {
                    alert("用户尚未登录");
                }
                var end=document.cookie.indexOf(";", start + prefix.length)
                var userid = document.cookie.substring(start + prefix.length, end)
                // alert(userid);

cookie和session

https://blog.csdn.net/java_faep/article/details/78082802
cookie是发送到客户浏览器的文本串句柄,保存在客户硬盘上,可以在某个web站点会话间持久的保存数据
session是访问者从到达特定主页到离开的时间,session实际上是利用cookie处理信息,用户请求之后,服务端在用户浏览器创建了一个cookie,session一结束,cookie就过期

服务器端在用户发送第一个请求的时候,为这个用户建立一个sessionID用于确定用户身份的合法性,sessionID有一个有效期,过期之后用户必须重新登录

sessionID一般是一个24 个字符组成的随机字符串,每次用户提交页面,浏览器都会把sessionID包含在http头里交给web服务器,web服务器就可以区分出是哪一个用户在请求,这个保存在客户端的sessionID复制信息一般就是以cookie的形式存储在客户浏览器的(有时候用户禁用cookie,服务器端就得不到sessionID,此时可以使用URL的方式存储客户端session,就是把sessionID直接写在URL里,不太常用)
cookie分为内存cookie(进程里的cookie)和硬盘里的cookie,浏览器一关闭,服务器保存到里面的cookie可能就消失了,所以无法找到原来服务器里的session,所以需要把cookie保存到用户的硬盘里,这样sessionID就可以长期保存直到session周期失效

会话cookie和持久cookie的区别

不设置过期时间,cookie在关闭浏览器的时候会消失,这种生命期就是浏览器会话期的就是会话cookie,是保存在内存里的
设置过期时间的话,浏览器会自动保存到硬盘里,存储在硬盘里的cookie可以在不同的浏览器里共享

客户端保存sessionID的方式

1.使用cookie,交互过程里浏览器可以自动把这个标识发送给客户
2.cookie被禁止的情况下,可以使用URL重写的技术把sessionID附加到URL路径后面
3.表单隐藏字段技术–服务器会自动修改表单,添加一个隐藏字段在表单提交的时候把sessionID传递给服务器

session是什么时候被创建的

只有用户提交请求的时候激活了HttpServletRequest.getSession(true)这样的语句就会被创建

session是什么时候被删除的

在服务器调用HttpSession.invalidate()的时候,或者距离上一次客户端发送的sessionID事件间隔超过了session的最大有效时间
在服务器进程停止的时候

getSession()/getSession(true)、getSession(false)的区别

都是在session存在的时候返回session,不过getSession()/getSession(true)会在不存在的时候新建一个session并且返回,false不会新建,直接返回null

isNew方法

不能准确的判断用户是否是新旧用户,某个session里是否存在某个特定的key或者value,验证一下value是否正确才是正确的做法

sql语句无则插入有则修改

普通sql insert语句
在这里插入图片描述
更新下数据库表可以看到实际上多次执行反复添加了很多条
在这里插入图片描述
可以使用这种语法:
语法:INSERT INTO 表名(字段名1,字段名2,...) VALUES(值1,值2,...) ON DUPLICATE KEY UPDATE 字段名=值,...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值