MongoDB 文档游标
查询结果遍历 当我们把查询结果赋值给一个JS变量的时候,查询结果其实是一个游标 可以通过下标来访问查询结果 item 可以迭代、遍历 打印出所有item1 > var cursor=db.accounts.find({name:'alice2'});
> while(cursor.hasNext()){ print(cursor.next()) }
[object BSON]
[object BSON]
[object BSON]
[object BSON]
打印出所有item2 > var
[ vue ] 今天完成的工作
解耦mock,在main.js中只需引入index.js即可。 使用mock接近RESTful规范 解耦vuex, 成功配置tinymce(花的时间最多) 按需引用tinymce组件
java中的并发工具辅助类
java中的并发工具类 一:等待多线程完成的CountDownLatch CountDownLatch允许一个或多个线程等待其他线程完成操作。 package com.fuzhulei; import java.util.concurrent.*; /** * 减法计数器,主要是countDown(计数器1) 和 await(阻塞)方法,只有当计数器减为0的时候,当前线程才可以往下继续执行。 * 主要用于允许一个或多个线程等待其他线程完成操作 * @author Huxudong
redis里list操作
Jedis jedis = new Jedis("192.168.220.129", 6380); // list里从左往右入栈 jedis.lpush("list02", "1", "2", "3", "4", "5"); // 通过lrange显示所有数据 System.out.println(jedis.lrange("list02", 0, -1)); // 通过lrange显示指定范围的数据 System.out.println(jedis.lrange("list02", 0, 3
MongoDB 文档投影
find 第2个参数用于指定返回哪些字段、不返回哪些字段。1 返回,0不返回 > db.accounts.find({},{name:1,_id:0})
{ "name" : "alice2" }
{ "name" : "charlie" }
{ "name" : "david" }
{ "name" : "charlie" }
{ "name" : "david" }
如果字段筛选不含主键字段,则不能混合使用包含与不包含 > db.accounts.find({},{name:1,bala
java HashSet
Set集合的功能和Collection是一致的。 HashSet:底层数据结构是哈希表,线程非同步。 HashSet保证元素唯一性:hashCode()和equals() 如果元素的hashCode值相同,才会判断equals是否为true。 如果元素的hashCode值不同,不会调用equals。 存人对象。同姓名同年龄,视为同一个人。 public class HashSetDemo {
public static void main(String[] args) {
React Hook挖坑
React Hook挖坑 如果已经使用过 Hook,相信你一定回不去了,这种用函数的方式去编写有状态组件简直太爽啦。 如果还没使用过 Hook,那你要赶紧升级你的 React(v16.8+),投入 Hook 的怀抱吧。 至于 Hook 的好处这里就不多说了,上一篇已经讲过了——React Hook上车。 Hook 虽好,操作不当可是容易翻车的哦。 下面,我们就来聊聊在使用过程中可能遇到的坑吧...... useState useState 只在组件首次渲染的时候执行 坑:useState的初始
【2020-04-04】决策格局的欠缺
22:00 一、充满爱去对待人民和土地。 二、摔倒了,赶紧爬起来往前走,莫欣赏摔倒的地方耽误事,莫停下来哀叹。 三、永远地、永远地拥抱自己的工作不放。 ——沈从文 我发现,我一天会做出许多的决策,有家常小事的决策,例如,像今天什么时候出发去孩子外姿家。还有工作上的决策,例如像刚才在思考安排谁去完成这个任务更加合适。我还发现,无论是皮毛家常,还是百万生意,对自己系统性的要求是一致的,一句话的决定所产生的影响本质是一样的。 很多时候,在繁忙的工作事务面前,我会忽视或轻视家庭琐碎上的一些决策,内心会
在 Gin 框架中使用 JWT 认证
什么是JWT? JWT全称JSON Web Token是一种跨域认证解决方案,属于一个开放的标准,它规定了一种Token实现方式,目前多用于前后端分离项目和OAuth2.0认证的业务场景下。 为什么需要JWT? 在偏传统的一些web项目中,我们通常使用的是Cookie-Session模式实现用户认证。相关认证流程大致如下: 1.用户在浏览器端填写用户名和密码,并发送给服务端2.服务端对用户名和密码校验通过后会生成一份保存当前用户相关信息的session数据和一个与之对应的标识(通常称为sess
文件重命名工具(ReNamer)7.2中文绿色便携专业版
ReNamer 是一个非常强大和灵活的文件重命名工具,它提供所有标准的重命名过程,包括前缀、后缀、替换、大小写更改以及删除括号内容、添加编号规则、更改文件扩展名等。对于高级用户,支持正则表达式和 PascalScript 规则,允许用户编写自己的重命名规则。程序允许您将多个重命名操作组合为一个规则集,以逻辑顺序应用每个操作,这些操作可在程序中保存、加载和管理。此外,它还可以重命名文件夹、处理正则表达式、Unicode 功能、并支持各种元标记,如:ID3v1、ID3v2、EXIF、OLE、AVI
tooltips 提示
tooltips 纯css工具提示 bubbles-tooltips 查看效果 演示 安装
npm install tooltips --save
使用 在 gulp 中使用 gulp var gulp = require('gulp');
var gutil = require('gulp-util');
var stylus = require('gulp-stylus');
var tooltips = require('tooltips');
var autoprefixer =
[转] mongoose的populate
MongoDB是文档型数据库,所以它没有关系型数据库joins 特性。但是mongoose也有自己的方法来解决两个表之间的关联问题,Mongoose就是通过populate来解决这个问题的。接下来分享一下populate的方法。 populate的用法一 创建两个model var personSchema = Schema({
_id : Number,
name : String,
age : Number,
});
var storySche
MongoDB 匹配查询和比较操作符
一、匹配查询 1. 查询所有 > db.accounts.find()
{ "_id" : "account1", "name" : "alice", "balance" : 100 }
{ "_id" : ObjectId("5d7f25f4aecbd2bc0fa821b3"), "name" : "charlie", "balance" : 500 }
{ "_id" : ObjectId("5d7f25f4aecbd2bc0fa821b4"), "name" : "david", "ba
分析 Nanocore
Nanocore是一个非常强大的木马控制系统,当Nanocore木马运行时,我们发现Windows Defender可以很好地识别威胁。本文的目的是分析Nanocore的传播方式,它是怎样感染Windows系统的。 样本是一个名为“eml_-_PO20180921.doc”的word文档,打开后,你会看到黄色的安全警告信息。这是因为文档中包含有宏代码。当Victim点击"Enable Content"之后,宏代码(即VBA代码)就会默默自动执行。 通过分析该VBA代码,可以看出这段宏代码的作用
Delphi数组详解
1 标准方法: var MyArr: array[0..10] of Integer; //定义静态数组
2 可以使用非0下标: var MyArr: array[9..10] of Integer; //不能提倡,这样不容易与系统函数沟通
3 根据预定义类型来声明数组: type TMyArr = array[0..10] of Integer; //先定义一个数组类型 var MyArr: TMyArr; //再定义静态数组
4 在非过程区可以直接赋值: var MyArr: arr
CF1103D Professional layer
我们上手能有个思路: 先求出所有\(a_i\)的\(gcd\),再分解质因数,得到的素数个数\(m\)一定满足\(m\leq11\)。 之后只需要关注这些素数即可。若对一个数进行操作,一定是直接消除某些素数,所以至多选\(m\)个数。 所以只要根据\(k\)处理出每个数可以消除的素数集合,就得到一个\(O(n*m*3^m)\)的\(dp\),显然过不了的。 所以我们要在这个基础上进行剪枝。 剪枝: 将不是目标素数的素数全除掉得到一组新的\(a_i\),然后把相同\(a_i\)压缩起来,对应的所
今日推荐
周排行