session

hibernate sql查询

喜夏-厌秋 提交于 2020-02-24 07:39:52
如果你跟我一样比较熟悉SQL,同时不想学习一门新的语言。那么在hibernate中使用Native SQL 查询也是一种不错的方式。 一方面,Native SQL在效率方面有天生的优势; 另一方面,SQL是数据库操作的一种标准,我们与程序、数据库关联很小。如果将来不用hibernate,而是用别的ORM,sql一样好用。 但尽量用标准SQL,而不要用过多方言SQL。 标量查询 最基本的 SQL 查询就是获得一个标量(数值)的列表。 sess.createSQLQuery("SELECT * FROM USER").list(); sess.createSQLQuery("SELECT ID, NAME, BIRTHDATE FROM USER").list(); 它们都将返回一个 Object 数组(Object[])组成的 List,数组每个元素都是 USER 表的一个字段值。Hibernate 会使用 ResultSetMetadata 来判定返回的标量值的实际顺序和类型。 如果不需要在后台进行复杂的处理,可直接将list<Object[]> 转化为json,交给前台去处理。在处理json时,按照数组的方式遍历一个item的属性,属性值为空对应null。 例如我们前台需要一个json格式的包含userName,address,phone的UserInfo列表

Java学习路线-50:Servlet监听器Listener

与世无争的帅哥 提交于 2020-02-24 07:15:50
课时12 什么叫监听器Listener AWT、SAX 监听器: 一个接口,内容由用户实现 需要注册 监听器中的方法,会在特殊事件发生时被调用 观察者 事件源 事件 监听器 课时13 监听器概述以及生命周期监听器 事件源 1 、ServletContext 生命周期监听 ServletContextListener 创建 contextInitialized 销毁 contextDestroyed ServletContextEvent - getServletContext ( ) 属性监听 ServletContextAttributeListener 添加 attributeAdded 替换 attributeReplaced 移除 attributeRemoved ServletContextAttributeEvent - getName ( ) - getValue ( ) 2 、HttpSession 生命周期监听 HttpSessionListener 创建 sessionCreated 销毁 sessionDestroyed HttpSessionEvent - getSession ( ) 属性监听 HttpSessionAttributeListener 添加 attributeAdded 替换 attributeReplaced 移除

第一节,TensorFlow基本用法

邮差的信 提交于 2020-02-24 06:10:20
在第一节中我们已经介绍了一些TensorFlow的编程技巧; 第一节,TensorFlow基本用法 ,但是内容过于偏少,对于TensorFlow的讲解并不多,这一节对之前的内容进行补充,并更加深入了解讲解TensorFlow. TesorFlow的命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算。TensorFlow是张量从图像的一端流动到另一端的计算过程,这也是TensorFlow的编程模型。 TensorFlow编程基础上主要介绍session的创建,以及session与图的交互机制,最后讲解一下在session中指定GPU运算资源。 一 运行机制 TensorFlow的运行机制属于"定义"与”运行“相分离。从操作层面可以抽象成两种:构造模型和模型运行。 在讲解构建模型之前,需要讲解几个概念。在一个叫做"图"的容器中包括: 张量(tensor):TensorFlow程序使用tensor数据结构来代表所有的数据,计算图中,操作间传递的数据都是tensor,你可以把TensorFlow tensor看做一个n维的数组或者列表。 变量(Variable):常用于定义模型中的参数,是通过不断训练得到的值。比如权重和偏置。 占位符(placeholder):输入变量的载体。也可以理解成定义函数时的参数。 图中的节点操作(op)

SpringBoot整合NoSql--(四)Session共享

牧云@^-^@ 提交于 2020-02-23 23:58:41
简介:   正常情况下,HttpSession是通过Servlet 容器创建并进行管理的,创建成功之后都是保存在内 存中。如果开发者需要对项目进行横向扩展搭建集群,那么可以利用一些硬件或者软件工具来做负 载均衡,此时,来自同一用户的HTTP请求就有可能被分发到不同的实例上去,如何保证各个实例 之间Session的同步就成为一个必 须解决的问题。   Spring Boot 提供了自动化的 Session共享配置,它结合Redis可以非常方便地解决这个问题。使用Redis 解决Session共享问题的原理非常简单,就是把原本存储在不同服务器上的Session拿出来放在一个独立的服务器上。      当一个请求到达Nginx服务器后,首先进行请求分发,假设请求被real server 1处理了,real server 1在处理请求时, 无论是存储Session还是读取Session,都去操作Session服务器 而不是操作自身内存中的Session,其他real server在处理请求时也是如此,这样就可以实现Session共享了。 Demo:   首先添加Redis和Session依赖, <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis

Nginx负载均衡会话共享问题

為{幸葍}努か 提交于 2020-02-23 16:03:15
1、什么是会话保持? 简单来说就是用户登录网站后,然后关闭浏览器,当下次在打开网站时,会发现还是处于登录状态,这个就可以理解为是会话保持的功能。 2、为什么要做会话保持? HTTP协议是无状态的,在同一个连接主,两个执行成功的请求之间是没有关系的。这就带来了一个问题,用户没有办法再同一个网站中进行连续的交互,比如再一个电商网站里,用户把某个商品加入到购物车,切换一个界面后再次添加了商品,这两次添加商品的请求之间没有关联,浏览器无法知道用户最终选择了那些商品。 3、会话保持实现的原理? cookie:一般存放再浏览器中的cookies中。主要存放信息(session ID) session:一般存放再服务端。主要存放信息有:(session ID对应的用户名、登录信息等) 4、用户访问动态网站时,cookie和session之间时如何工作的 当用户首次请求服务端网站时,服务端会通过程序生成session_id,然后使用set-cookie的方式将session_id下发给浏览器,浏览器会将session ID存储至本地的cookies中 当用户再次请求服务端网站时,浏览器会再Headers头信息携带该网站的cookie信息,那浏览器携带的cookie信息则时第一次请求网站时服务端给下发的session_ID 用户登录该网站后,服务端会将对应的session_ID存储到(Mysql

mysql变量(用户+系统)

荒凉一梦 提交于 2020-02-23 16:01:04
9.3. 用户变量 可以先在用户变量中保存值然后在以后引用它;这样可以将值从一个语句传递到另一个语句。用户变量与连接有关。也就是说,一个客户端定义的变量不能被其它客户端看到或使用。当客户端退出时,该客户端连接的所有变量将自动释放。 用户变量的形式为@var_name,其中变量名var_name可以由当前字符集的文字数字字符、‘.’、‘_’和‘$’组成。 默认字符集是cp1252 (Latin1)。可以用mysqld的-- default -character- set 选项更改字符集。参见5.10.1节,“数据和排序用字符集”。用户变量名对大小写不敏感。 设置用户变量的一个途径是执行SET语句: SET @var_name = expr [, @var_name = expr] ...对于SET,可以使用=或:=作为分配符。分配给每个变量的expr可以为整数、实数、字符串或者NULL值。 也可以用语句代替SET来为用户变量分配一个值。在这种情况下,分配符必须为:=而不能用=,因为在非SET语句中=被视为一个比较 操作符: mysql> SET @t1=0, @t2=0, @t3=0; mysql> SELECT @t1:= (@t2:=1)+@t3:=4,@t1,@t2,@t3;+----------------------+------+------+------+| @t1:=

module 'tensorflow' has no attribute 'Session'

烈酒焚心 提交于 2020-02-23 15:25:56
AttributeError: module 'tensorflow' has no attribute 'Session'错误解决 原创陆羽飞 最后发布于2019-10-07 13:32:07 阅读数 16728 收藏 展开 Ubuntu刚安装好Tensorflow以后运行 import tensorflow as tf tf.Session() 报错AttributeError: module 'tensorflow' has no attribute 'Session'。这其实不是安装错误,是因为在新的Tensorflow 2.0版本中已经移除了Session这一模块,改换运行代码 tf.compat.v1.Session() 就可以获得与原先相同的输出信息。如果觉得不方便,也可以改换低版本的Tensorflow,直接用pip即可安装 sudo pip install tensorflow==1.14 来源: CSDN 作者: ShellCollector 链接: https://blog.csdn.net/jacke121/article/details/104456645

ORM基本操作回顾

二次信任 提交于 2020-02-23 13:41:40
连接数据库 默认是 MySQLdb 指定引擎 dialect[+driver]: //user:password@host/dbname[?key=value..]: from sqlalchemy import create_engine engine = create_engine("mysql+pymysql://root:root@127.0.0.1/ormreview?charset=utf8", encoding='utf8') # 判断是否连接成功 with engine.connect() as f: result = f.execute("select 1") print(result.fetchone()) print(type(result)) >>> # (1,) #<class 'sqlalchemy.engine.result.ResultProxy'> ORM模型创建 必须继承自sqlalchemy提供的基类 from sqlalchemy.ext.declarative import declarative_base from datetime import datetime engine = create_engine("mysql+pymysql://root:root@127.0.0.1/ormreview?charset=utf8",

【Flask】Column常用参数

与世无争的帅哥 提交于 2020-02-23 13:40:48
### Column常用参数: 1. primary_key:设置某个字段为主键。 2. autoincrement:设置这个字段为自动增长的。 3. default:设置某个字段的默认值。在发表时间这些字段上面经常用。 4. nullable:指定某个字段是否为空。默认值是True,就是可以为空。 5. unique:指定某个字段的值是否唯一。默认是False。 6. onupdate:在数据更新的时候会调用这个参数指定的值或者函数。在第一次插入这条数据的时候,不会用onupdate的值,只会使用default的值。常用的就是`update_time`(每次更新数据的时候都要更新的值)。 7. name:指定ORM模型中某个属性映射到表中的字段名。如果不指定,那么会使用这个属性的名字来作为字段名。如果指定了,就会使用指定的这个值作为参数。这个参数也可以当作位置参数,在第1个参数来指定。 1 # coding:utf-8 2 # Author: liangjun.chen 3 4 from datetime import date 5 from datetime import datetime 6 from datetime import time 7 8 from sqlalchemy import create_engine, Column, Integer, String,

一、Tensorflow新手入门

时光毁灭记忆、已成空白 提交于 2020-02-23 12:59:43
1、MacOS Tensorflow(CPU版本)下载和安装 pip3 install tensorflow 2、Tensorflow的基本用法 使用图(graph)来表示计算任务 在回话(Session)的上下文(context)中执行图 使用tensor表示数据 通过变量(Variable)维护状态 使用feed和fetch可以为任意的操作赋值或者从中获取数据   综述:Tensorflow图中的节点称为op(operation),一个op获得o个或者多个tensor(数据)来执行计算,产生0个或者多个tensor(数据),每个tensor是一个类型化的多维数组   计算图:Tensorflow程序通常分为构建阶段和执行阶段,构建阶段:op的执行步骤被描述成一个图,执行阶段:使用回话执行图中的op   构建图:构建图的第一步是创建源op(源op不需要任何输入,如常量Constant),源op的输出被传递给其它op做运算。Tensorflow Python库有一个默认图,op构造器可以为图增加节点 import tensorflow as tf # 创建一个常量op(节点),产生一个1X2矩阵 # 添加到默认图中 # 构造器的返回值代表该常量的op的返回值 matrix1 = tf.constant([[3., 3.]]) # 创建一个常量op(节点),产生一个2X1矩阵