session对象

西蒙购物网——控制层

て烟熏妆下的殇ゞ 提交于 2019-12-11 10:26:39
实现步骤 在src内新建net.zxy.shop.servlet包,然后在里面创建控制类 登录处理类LoginServlet package net.zxy.shop.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import net.zxy.shop.bean.User; import net.zxy.shop.service.UserService; @WebServlet("/login") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet

request session application

♀尐吖头ヾ 提交于 2019-12-10 19:56:01
2.request session application 2.1 这三种对象可以在服务器内部帮我们保存数据以及传递数据. 类型(接口) 对象名 HttpServletRequest request HttpSession session ServletContext application 2.2 doGet或者doPost中怎么拿到这三种对象 request对象 在doGet或者doPost方法的参数中 session对象 HttpSession session = request.getSession(); application对象 request.getServletContext(); 或者 this.getServletContext(); 或者 request.getSession().getServletContext(); 或者 this.getServletConfig().getServletContext(); 注意:无论哪一种方式,拿到的都是同一个application对象 2.3 这三种对象的生命周期及作用范围 request对象 生命周期: 客户端每次发请求,服务器就会创建一个新的request对象,本次访问结束后,该request对象就会被销毁 作用范围: 使用request存/取数据只能在一次请求之内起作用.比如服务器内部跳转的时候

会话追踪技术

非 Y 不嫁゛ 提交于 2019-12-10 19:39:29
3.会话追踪技术:cookie 3.1 http协议的访问是无状态的访问 当前访问是不会知道之前访问的状态的.(http协议的访问是不会帮我们保存访问的记录/痕迹的)。 3.2 有些时候需要记录之前的访问状态 比如在购物网站的时候,第一次访问点击购买了一个手机,第二次访问点击购买了一个电脑,第三次访问点击购物车结算,这个时候我们就必须知道前俩次访问的时候购买了什么,要不然就没有方法去结算。 所以我们就有了会话追踪技术来解决这个访问无状态的问题 3.3 session和cookie的位置 session是保存在服务器端的一个对象.客户端是没有session的. cookie在客户端和服务器端都会有。但是存在的形式不一样.在客户端cookie是以本地文件(浏览器管理的文件)的形式存在的,在服务器端是以java对象的形式存在.我们平时说说的cookie都是指的客户端文件形式存在的cookie 3.4 session和cookie的作用 session是在服务器端保存用户的相关信息,cookie是在客户端保存用户的相关信息。同时cookie还可以在客户端保存session的信息,例如session的id值 3.5 session和cookie之间的关系 1.客户端访问服务器的时候,假设服务器创建了一个session对象,服务器端的内存里面同时可能有好多个session对象

重定向和转发的区别session和cookie的简介

泄露秘密 提交于 2019-12-10 17:51:23
二、cookie: 是由javax.servlet.http.cookie这个类产生的。通过response.addCookie()产生一个对象,通过页面跳转发送,再由客户端request.getCookies()获取cookie对象。cookie保存在客户端,效率高,安全性差,session保存在服务器cookie是以像键值对方式存在(key value)。 getName()获取cookie的键 getvalue()获取cookie的值 setMaxAge():设置cookie的最大有效期 三、session: session是存储在服务器中的,客户端第一次请求访问服务端时,服务端产生一个session对象(用于保存该客户的信息),并且每个session对象有一个唯一的sessionId,服务器会将这sessionId保存在cookie,并在响应的时候将cookie发送给客户端,在这次会话没结束的情况下,客户端下次访问时,务器首先检查这个客户端的请求里是否包含了一个session标识(即sessionId),如果经包含一个sessionId则说明以前已经为此客户创建过session。 String getId():获取sessionId Boolean isNew():判断是否是新用户(第一次访问) void invalidate():销毁session

SQLAlchemy中Model.query和session.query(Model)的区别

允我心安 提交于 2019-12-10 14:26:01
我们使用Flask 0.11.1,Flask-SQLAlchemy 2.1使用PostgreSQL作为DBMS. 示例使用以下代码更新数据库中的数据: entry = Entry.query.get(1) entry.name = 'New name' db.session.commit() 从Flask shell执行时,这完全正常,因此数据库已正确配置.现在,我们的控制器用于更新条目,略微简化(没有验证和其他样板),如下所示: def details(id): entry = Entry.query.get(id) if entry: if request.method == 'POST': form = request.form entry.name = form['name'] db.session.commit() flash('Updated successfully.') return render_template('/entry/details.html', entry=entry) else: flash('Entry not found.') return redirect(url_for('entry_list')) # In the application the URLs are built dynamically, hence why this

cookie+session_笔记

我是研究僧i 提交于 2019-12-10 12:49:23
1. 会话技术 1. Cookie 2. Session 2. JSP:入门学习 ## 会话技术 1. 会话:一次会话中包含多次请求和响应。 * 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止 2. 功能:在一次会话的范围内的多次请求间,共享数据 3. 方式: 1. 客户端会话技术:Cookie 2. 服务器端会话技术:Session ## Cookie: 1. 概念:客户端会话技术,将数据保存到客户端 2. 快速入门: * 使用步骤: 1. 创建Cookie对象,绑定数据 * new Cookie(String name, String value) 2. 发送Cookie对象 * response.addCookie(Cookie cookie) 3. 获取Cookie,拿到数据 * Cookie[] request.getCookies() 3. 实现原理 * 基于响应头set-cookie和请求头cookie实现 4. cookie的细节 1. 一次可不可以发送多个cookie? * 可以 * 可以创建多个Cookie对象,使用response调用多次addCookie方法发送cookie即可。 2. cookie在浏览器中保存多长时间? 1. 默认情况下,当浏览器关闭后,Cookie数据被销毁 2. 持久化存储: * setMaxAge(int

2019上学期第十五周学习

时光总嘲笑我的痴心妄想 提交于 2019-12-10 10:10:12
1、登录处理类LoginServlet net.wlq.shop.servlet; /** * 功能:登录处理类 * 作者:邓益春 * 日期:2019年12月9日 */ import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import net.wlq.shop.bean.User; import net.wlq.shop.service.UserService; @WebServlet("/login") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest

西蒙购物网(显示类别处理类)

怎甘沉沦 提交于 2019-12-10 08:38:10
一、代码如下: /** 功能:显示类别控制程序 作者:冯正权 日期:2019年12月9日 */ package net.fzq.shop.servlet; import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import net.fzq.shop.bean.Category; import net.fzq.shop.service.CategoryService; @WebServlet("/showCategory") public class ShowCategoryServlet extends HttpServlet { private static final long serialVersionUID = 1L;

Codeigniter 3有什么新玩意

不打扰是莪最后的温柔 提交于 2019-12-10 08:03:20
Codeigniter 源码托管在 github ,我们可以看到最新版本为3.0-dev,让我们来看看有什么新玩意。 新的 VIEWPATH 常量定义,可以定义 views 路径 错误模板(error_xxx.php)文件移到了 VIEWPATH/errors目录 SHOW_DEBUG_BACKTRACE 常亮定义,用于发生PHP错误时显示完整的 debug backtrace 大部分方法的注释 @return 标签都定义了实际的返回对象,方便ide自动完成 缓存系统新增redis、wincache,新增memcached.php配置文件(config目录) Session类库支持PHP原生session和原来的cookie session 数据库新增对sqllite3和ibase的支持 目前就发现这么多,现在距Codeigniter 3.0正式版发布还有一段时间,说不定到时候还会增加更多好东东。via:http://tang.babyfamily.com/2013/01/33.html 来源: oschina 链接: https://my.oschina.net/u/108438/blog/100995

java搭建WebSocket的两种方式

房东的猫 提交于 2019-12-10 05:54:15
这两种方式分别是: 1、直接使用Java EE的api进行搭建。 2、和springboot整合的WebSocket服务。 下面分别介绍搭建方法: 一、 直接使用Java EE的api进行搭建。 一共3个步骤: 1、添加依赖 <dependency> <groupId>javax</groupId> <artifactId>javaee-api</artifactId> <version>7.0</version> <scope>provided</scope> </dependency> 2、使用注解 @ServerEndpoint import javax.websocket.*; import javax.websocket.server.PathParam; import javax.websocket.server.ServerEndpoint; import java.io.IOException; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.logging.Logger; /** * WebSocket连接 sessionKey是url中的参数 */ @ServerEndpoint("/websocket/{sessionKey}")