session对象

Spring中bean的scope详解

本秂侑毒 提交于 2020-01-10 02:53:14
如何使用spring的作用域: <bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/> 这里的scope就是用来配置spring bean的作用域,它标识bean的作用域。 在spring2.0之前bean只有2种作用域即:singleton(单例)、non-singleton(也称 prototype), Spring2.0以后,增加了session、request、global session三种专用于Web应用程序上下文的Bean。因此,默认情况下Spring2.0现在有五种类型的Bean。当然,Spring2.0对 Bean的类型的设计进行了重构,并设计出灵活的Bean类型支持,理论上可以有无数多种类型的Bean,用户可以根据自己的需要,增加新的Bean类 型,满足实际应用需求。 1、singleton作用域(scope 默认值) 当一个bean的作用域设置为singleton, 那么Spring IOC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。换言之,当把 一个bean定义设置为singleton作用域时,Spring IOC容器只会创建该bean定义的唯一实例。这个单一实例会被存储到单例缓存

spring学习之bean scope

a 夏天 提交于 2020-01-09 18:48:47
详解 Spring 中 bean 的 scope 以后使用 如何使用spring的作用域: <bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/> 这里的scope就是用来配置spring bean的作用域,它标识bean的作用域。 在spring2.0之前bean只有2种作用域即:singleton(单例)、non-singleton(也称 prototype), Spring2.0以后,增加了session、request、global session三种专用于Web应用程序上下文的Bean。因此,默认情况下Spring2.0现在有五种类型的Bean。当然,Spring2.0对 Bean的类型的设计进行了重构,并设计出灵活的Bean类型支持,理论上可以有无数多种类型的Bean,用户可以根据自己的需要,增加新的Bean类 型,满足实际应用需求。 1、 singleton 作用域 当一个bean的作用域设置为singleton, 那么Spring IOC容器中只会存在一个共享的bean实例,并且所有对bean的请求,只要id与该bean定义相匹配,则只会返回bean的同一实例。换言之,当把 一个bean定义设置为singleton作用域时,Spring

Java - 框架之 Hibernate

删除回忆录丶 提交于 2020-01-09 04:05:34
一:hibernate.cfg.xml 配置 <!-- 1、配置数据库连接的4个参数 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 连接数据库,本地数据库可以不用设置主机和端口 --> <property name="hibernate.connection.url">jdbc:mysql:///hibernate_01</property> <!-- jdbc:mysql://localhost:3306/数据库名 --> <!-- 用户名/密码 --> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password">chaoqi</property> <!-- 是否显示sql语句 --> <property name="show_sql">true</property> <!-- 是否格式化sql语句 --> <property name="format_sql">true</property> <!-- 是否自动提交事务:针对insert有效,针对delete无效 -->

WebSocket的简单实现&jsp

我的梦境 提交于 2020-01-08 23:21:41
创建一个web项目 导入依赖: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.chu</groupId> <artifactId>webSocket</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <dependencies> <!-- servlet-api--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <!-- websocket-api-->

session 和 cookie

我的梦境 提交于 2020-01-08 20:36:43
cookie : http 是无状态协议 所以 不会知道 这次的请求跟上次的关系 所以就有了cookie 是由服务器生成但是存在客户端 (伴随着就是不安全的) 。 只能时同一路径 下才能访问,第一次请求的时候会把cookieId 从服务端 发过来(在响应头中) . 第一次生成的会在响应头里边加上cookie的健值,下一次在一定范围内也会携带着cookie 传入服务器 存放地址是在硬盘上的 可以指定路径访问(默认时所在路径) session(会话) :--就是seeion 失效时会话结束   工作原理: 写入seesion列表(Map)   服务器生成发送Cookie(SessionId) 客户端并发送Cookie(SessionId) 从session列表中查找根据sessionId   失效:--失效不等于null 只是与解绑所有与他绑定的对象 只是个空的对象 但是不为空  在失效时间(timeout)内一直未被访问,那么session失效  也可以主动让他失效 有对应的方法 服务器都应用的sessiond的管理是以Map 管理的 key 时sessionId ,value 是值的引用 是在服务器端生成,但是也存在服务器端,生成session的时候就会生成一个cookie作为sessionId 作为session 的Key 第一次请求的时候会把sessionId

Flask框架(七)

一笑奈何 提交于 2020-01-07 21:13:10
flask框架(七) 蓝图 作用:对程序进行目录结构划分 不使用蓝图情况下,自己分文件 目录结构: -templates -views -__init__.py -user.py -order.py -app.py app.py from views import app if __name__ == '__main__': app.run() init .py from flask import Flask,request app = Flask(__name__) #不导入这个不行 from . import account from . import order from . import user user.py from . import app @app.route('/user') def user(): return 'user' order.py from . import app @app.route('/order') def order(): return 'order' 使用蓝图 (Blueprint) 目录结构: -app01 -pro -templates -__init__.py -views -manage.py manage.py from pro import app if __name__ == '__main__': app.run()

Flask框架学习(五)

≡放荡痞女 提交于 2020-01-07 20:11:39
flask框架(五) 自定义转化器 如果用正则的话,我们要用自定义的路由。 1导入from werkzeug.routing import BaseConverter 2我先要写一个类,然后继承BaseConverter,然后实现__init__, to_python(self, value),to_url(self, value) 这三个方法 3 app.url_map.converters['随便写'] = RegexConverter 4 我们在路由里面@app.route('/index/<regex1("\d+"):nid>'),regex1是随便写,regex1("正则表达式") 5 regex1("正则表达式")匹配出来的结果,返回to_python,一定要return (视图函数的参数能接收到to_python的返回值) 6 当我们做反向解析的解析的时候,传递的参数,会传递给to_url,return的结果是拼接到我们路由上 代码示例: from flask import Flask,url_for from werkzeug.routing import BaseConverter app = Flask(import_name=__name__) class RegexConverter(BaseConverter): """ 自定义URL匹配正则表达式 """

hibernate缓存理解

让人想犯罪 __ 提交于 2020-01-07 07:51:02
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 1 ) Hibenate 中一级缓存,也叫做 session 的缓存, 它可以在 session 范围内减少数据库的访问次数! 只在 session 范围有效! Session 关闭,一级缓存失效! 2 )当调用 session 的 save/saveOrUpdate/get/load/list/iterator 方法的时候,都会把对象放入 session 的缓存中。 3 ) Session 的缓存由 hibernate 维护, 用户不能操作缓存内容; 如果想操作缓存内容,必须通过 hibernate 提供的 evit/clear 方法操作。 特点: 只在 ( 当前 )session 范围有效,作用时间短,效果不是特别明显! 在短时间内多次操作数据库,效果比较明显! 缓存相关几个方法的作用 session.flush(); 让一级缓存与数据库同步 session.evict(arg0); 清空一级缓存中指定的对象 session.clear(); 清空一级缓存中缓存的所有对象 在什么情况用上面方法? 批量操作使用使用: Session.flush(); // 先与数据库同步 Session.clear(); // 再清空一级缓存内容 面试题 1 : 不同的 session 是否会共享缓存数据 ? 不会。

Servlet 工作原理解析

情到浓时终转凉″ 提交于 2020-01-07 04:08:04
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 从 Servlet 容器说起 要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力。虽然它们是彼此依存的,但是又相互独立发展,这一切都是为了适应工业化生产的结果。从技术角度来说是为了解耦,通过标准化接口来相互协作。既然接口是连接 Servlet 与 Servlet 容器的关键,那我们就从它们的接口说起。 前面说了 Servlet 容器作为一个独立发展的标准化产品,目前它的种类很多,但是它们都有自己的市场定位,很难说谁优谁劣,各有特点。例如现在比较流行的 Jetty,在定制化和移动领域有不错的发展,我们这里还是以大家最为熟悉 Tomcat 为例来介绍 Servlet 容器如何管理 Servlet。Tomcat 本身也很复杂,我们只从 Servlet 与 Servlet 容器的接口部分开始介绍,关于 Tomcat 的详细介绍可以参考我的另外一篇文章《 Tomcat 系统架构与模式设计分析》。 Tomcat 的容器等级中,Context 容器是直接管理 Servlet 在容器中的包装类 Wrapper,所以 Context 容器如何运行将直接影响 Servlet 的工作方式。 图 1 . Tomcat

web前端 | 博客(二)登录功能

扶醉桌前 提交于 2020-01-06 20:29:47
实现登录功能 创建用户集合,初始化用户 连接数据库 创建用户集合 初始化用户 为登录表单项设置请求地址,请求方式(GET方法会将参数放到地址栏中,不隐蔽,要用POST方法,它将参数放到消息体中,比较隐蔽)以及表单name属性 当用户点击登录按钮时,客户端验证用户是否填写了登录表单 如果其中一项没有输入,则阻止表单提交 服务器端请求接收参数,验证用户是否填写了登录表单(有时候客户端的js代码会被禁用,无法正确识别表单的准确性,故服务端的表单验证必不可少) 如果有一项没有输入,为客户端做出响应,阻止程序向下执行(例如,如果没有填写邮箱,则找不到该用户)(无论邮箱地址错误还是密码错误,一律提示两者都错,防止用户恶意猜出其他用户的账号密码) 根据邮箱地址查询用户信息 如果用户不存在,为客户端做出响应 如果用户存在,将用户名和密码进行比对 比对成功,则用户登录成功 比对失败,则则用户登录失败 数据库 数据库连接 在model中新建connect.js和user.js,分别用于数据库连接和创建用户集合。 connect.js //连接数据库 //引入mongoose第三方模块,这个对象下面有个connect方法用户连接数据库 const mongoose = require ( 'mongoose' ) ; //连接数据库 mongoose . connect ( 'mongodb:/