session对象

hibernate的映射关系之一对多

╄→尐↘猪︶ㄣ 提交于 2020-03-23 12:52:27
关系 :事物之间相互作用、相互联系的状态。范围最大。 联系 :在关系数据库中表示实体与实体之间的联系,1:1,1:n,m:n。 关联 :表示对象之间的关系,既有数量性,又有方向性;动词:将对象之间通过某种方式联系起来。 映射 :这里指java对象和数据库表的一种对应关系。动词:形成这种对应关系。 级联 :有关系的双方中操作一方,另一方也将采取一些动作。 关联的联系种类 在不考虑关联的方向前提下,联系就是关系数据库中表示实体与实体之间的联系,1:1,1:n,m:n。 一对一联系(1:1):如用户和身份证、一夫一妻 一对多联系(1:n):如班级和学生 多对多联系(m:n):如学生和选课 关联的方向 关联关系的方向可分为单向关联和双向关联。 双向关联的方向其实就不重要了,因为通过任一一方都可以维护彼此的关系。也就是说:在双向关联中一对多和多对一都是一样的。 利用Java Project项目演示试用Hibernate技术添加数据到数据库 1 建立项目之后首先呢肯定是需要导入相关的JAR包的 2 然后是创建实体类 package cn.itcast.hiberate.sh.domain; public class Student { private Long sid; private String sname; private String description; public Long

WCF后续之旅(9):通过WCF的双向通信实现Session管理[上篇]

China☆狼群 提交于 2020-03-23 10:55:31
我们都知道,WCF支持Duplex的消息交换模式,它允许在service的执行过程中实现对client的回调。WCF这种双向通信的方式是我们可以以Event Broker或者订阅/发布的方式来定义和调用WCFService。今天我们就给大家一个具体的例子:通过WCF的duplex communication方式现在Session管理。 1、Session 管理提供的具体功能 我们的例子实现了下面一些Session Management相关的功能: Start/End Session: 可以调用service开始一个新的Session或者结束掉一个现有的Session。当开始一个Session的时候,service根据client端传入的client相关的信息(ClientInfo),创建一个SessionInfo对象,该对象由一个GUID类型的SessionID唯一标识,代表一个具体的Client和Service的Session。在service端,通过一个dictionary维护者一个当前所有的activesession列表,key为SessionID,value是SessionInfo对象。当client调用相应的service,传入对应的SessionID,该SessionID对应的SessionInfo从该session列表中移除。 Session Timeout:

WCF后续之旅(9):通过WCF的双向通信实现Session管理[上篇]

谁说胖子不能爱 提交于 2020-03-23 10:55:08
我们都知道,WCF支持Duplex的消息交换模式,它允许在service的执行过程中实现对client的回调。WCF这种双向通信的方式是我们可以以Event Broker或者订阅/发布的方式来定义和调用WCF Service。今天我们就给大家一个具体的例子:通过WCF的duplex communication方式现在Session管理。 一、Session 管理提供的具体功能 我们的例子实现了下面一些Session Management相关的功能: Start/End Session: 可以调用service开始一个新的Session或者结束掉一个现有的Session。当开始一个Session的时候,service根据client端传入的client相关的信息(ClientInfo),创建一个SessionInfo对象,该对象由一个GUID类型的SessionID唯一标识,代表一个具体的Client和Service的Session。在service端,通过一个dictionary维护者一个当前所有的active session列表,key为SessionID,value是SessionInfo对象。当client调用相应的service,传入对应的SessionID,该SessionID对应的SessionInfo从该session列表中移除。 Session Timeout:

Cookie和Seesion

限于喜欢 提交于 2020-03-22 17:28:17
既然学习了javaweb,我就肯定避免不了要去接触cookie和seesion下面简单的描述一下两者: cookie: 在网站登录的时候,会有一个再次网站下记住密码的选项,如果你选上了,下次登录的时候就不用再重新输入账号密码, 这就cookie实现的一个小功能。 客户端通过浏览器向服务器发出请求(记住账号密码)服务器响应客户端给客户端发送一个大约4kb左右的文档存放在客 户端浏览器当中,这个文档就属于一个cookie,当用户再一次打开浏览器登录时,这时就需要你重新输入账号密码浏览器 直接从cookie中取值。 cooki的生命周期默认情况下:从客户端开启浏览器到关闭浏览器 (可以设置cookie的有效期,从而实现永久有效); 创建 cookie : Cookie c = new Cookie ( "name" , "value" ) ; 设置有效期: c.setMaxAge(24 * 60 * 60); //以秒为单位 这个是一天的时长 设置有效路径: c. setPath ( "127.0.0.1" ) ; 保存cookie: response. addCookie (c ) ; //使用response将cookie保存在客户端浏览器里 删除cookie: Cookie cookie = new Cookie (WebConst .USER_IN_COOKIE , "" ) ;

SpringBoot webSocket

守給你的承諾、 提交于 2020-03-22 04:44:53
https://blog.csdn.net/u013565163/article/details/80659828 SpringBoot+websocket+定时任务 SpringBoot+websocket 概念 websocket:由于http协议时基于 请求-响应模型 服务端的每次响应都必须有客户端发起(浏览器)的请求。如果服务端想主动推送消息到客户端是很难满足的。 如果一定想使用http来做服务端主动推动,只能客户端不停的发起轮询请求,如果访问量很很大,这种模式会拖垮服务器。造成很大的通信开销和服务端流量压力。 使用websocket可以完成要求实时性的应用:股票的变动、天气、彩票、即时通讯、通知。 WebSocket 是web客户端和服务器之间新的通讯方式, 依然架构在HTTP协议之上。使用WebSocket连接, web应用程序可以执行实时的交互, 而不是以前的poll方式。 WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议,可以用来创建快速的更大规模的健壮的高性能实时的web应用程序。WebSocket通信协议于2011年被IETF定为标准RFC 6455,WebSocketAPI被W3C定为标准。 在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道

Hibernate【2】——封装工具、HibernateUtil类以及DAO层的BaseDAO类

ε祈祈猫儿з 提交于 2020-03-21 01:12:41
参考博文:http://blog.csdn.net/hanhan313/article/details/8125924 1、整体目录 (1)添加一个HibernateUtil类(获取会话) (2)添加一个BaseDAO类(基本操作) (3)添加一个测试类 2、HibernateUtil 1 package com.demo.util; 2 3 import org.hibernate.Session; 4 import org.hibernate.SessionFactory; 5 import org.hibernate.cfg.Configuration; 6 import org.hibernate.service.ServiceRegistry; 7 import org.hibernate.service.ServiceRegistryBuilder; 8 9 public class HibernateUtil { 10 private static SessionFactory sessionFactory; 11 12 /** 13 * @return 获取会话工厂 14 */ 15 public static SessionFactory getSessionFactory() 16 { 17 //第一步:读取Hibernate的配置文件 hibernamte

HTTP会话保持技术Cookie与Session

故事扮演 提交于 2020-03-20 07:35:42
摘要 : 本文介绍Cookie与Session原理,对于Cookie与Session的属性详情和其他扩展不做探讨。必须的前导知识:HTTP协议原理。 一、HTTP协议的缺陷—— 无状态 因为HTTP1.0被设计成是基于TCP协议的 短连接 ,即完成一次“请求-应答”之后会断开连接。所以,服务器接到一次HTTP请求时不知道之前是否曾经收到过同一个客户端发送来的请求,即“无状态”。这意味着如果服务器处理请求时需要上次请求的信息,客户端必须重传全部信息,这样可能导致每次连接传送的数据量巨增。 思考1:为什么HTTP被设计成短连接?能不能是长连接,这样就保存了会话状态? 二、Cookie技术——客户端会话保持 (一)Cookie的原理 Cookie是通过HTTP协议扩展实现的,即在HTTP请求头里面增加Cookie字段,用于存储客户端信息。 Cookie的原理和实现步骤参考图1: 图1:Cookie实现会话保持步骤截图 1.客户端向Web服务器发起HTTP请求; 2.服务器在返回响应时,在HTTP响应头中设置Set-Cookie字段,该字段存储客户端信息和状态; Java实现: Cookie cookie = new Cookie("username","zhang3"); response.addCookie(cookie); 3.客户端解析服务器HTTP响应报头中的Set

[转载]深度理解Session

不羁岁月 提交于 2020-03-20 07:25:35
什么是session session的官方定义是:Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。 说白了session就是一种可以维持服务器端的数据存储技术。session主要有以下的这些特点: 1. session保存的位置是在服务器端 2. session一般来说是要配合cookie使用,如果是浏览器禁用了cookie功能,也就只能够使用URL重写来实现session存储的功能 3. 单纯的使用session来维持用户状态的话,那么当同时登录的用户数量较多的时候,或者存在较多的数量的session会导致查询慢的问题 本质上:session技术就是一种基于后端有别于数据库的临时存储数据的技术 为什么要有session 主要的一个原因就是HTTP的无状态性 因为HTTP的无状态性,所以我们没有办法在HTTP发送请求的时候知道当前用户的状态,也就是比如说,当前是哪个用户的之类的这种信息,所以这个时候我们需要session来标识当前的状态 seesion的工作原理 接下来,通过一个模拟用户登录的流程图来初步理解session的原理,假设这个时候用户执行登录操作,具体的session工作流程如下: 整个流程大概分成这样的几步: 1. 第一步将本地的cookie中的session标识和用户名,密码带到后台中 2.

Servlet 工作原理解析【转】

旧巷老猫 提交于 2020-03-20 01:06:04
3 月,跳不动了?>>> 简介: Web 技术成为当今主流的互联网 Web 应用技术之一,而 Servlet 是 Java Web 技术的核心基础。因而掌握 Servlet 的工作原理是成为一名合格的 Java Web 技术开发人员的基本要求。本文将带你认识 Java Web 技术是如何基于 Servlet 工作,你将知道:以 Tomcat 为例了解 Servlet 容器是如何工作的?一个 Web 工程在 Servlet 容器中是如何启动的? Servlet 容器如何解析你在 web.xml 中定义的 Servlet ?用户的请求是如何被分配给指定的 Servlet 的? Servlet 容器如何管理 Servlet 生命周期?你还将了解到最新的 Servlet 的 API 的类层次结构,以及 Servlet 中一些难点问题的分析。 从 Servlet 容器说起 要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力。虽然它们是彼此依存的,但是又相互独立发展,这一切都是为了适应工业化生产的结果。从技术角度来说是为了解耦,通过标准化接口来相互协作。既然接口是连接 Servlet 与 Servlet 容器的关键,那我们就从它们的接口说起。 前面说了 Servlet

hibernate原理解析

北城以北 提交于 2020-03-19 19:55:59
1.hibernate的常用接口 (1) Configucation:负责加载Hibernate的配置及映射信息,启动Hibernate,根据连接到数据库的信息来创建 SessionFactory对象。 (2) SessionFactory: 初始化Hibernate,创建Session对象。他是线程安全的,通常采用单子模式创建此对象。 (3)Session :负责保存·修改·删除·查询·加载对象,这个session不是线程安全的,使用Threadlocal来得到session (相当于创建了一个副本)。 (4)Transaction: 事务处理 开启事务的方法 Transaction tx= session.beginTransaction(); 提交事务 tx.commit(); (5) Query和Criteria:Query是执行数据库查询,Query接口包装了一个HQL语句,HQL语句是面向对象的,它引用类名 和属性名, 而不是表名和字段名。Criteria完全封装了基于字符串形式的查询语句,比Query接口更加面向对象,擅长 动态查询。 2.hibernate体系结构 3.hibernate的工作原理 (1)hibernate如何连接数据库? 配置文件Hibernate.cfg.xml文件中定义了和数据库进行连接的信息,包括数据库方言.jdbc驱动.用户名