摘要: 1、查询所有 输出: 使用asList()是可以的,但实际上,fetch()通常是更好的选择。 2、条件过滤 使用filter比fiele更简洁,但要注意语法。 阅读全文
posted @ 2018-10-30 09:32 遥远2 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 更新由2部分组成:一个查询和一组更新操作符。本例是跟所有薪水小于等于2000的员工涨工资500。 输出: 2表示修改了2条。 阅读全文
posted @ 2018-10-30 09:32 遥远2 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 输出:WriteResult{n=1, updateOfExisting=false, upsertedId=null} 虽然delete方法有很多,但这是最常用的。 但是,其父记录的directReports中存在着的该记录却没有被删除。 阅读全文
posted @ 2018-10-30 09:32 遥远2 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 1、filter 操作符:org.mongodb.morphia.query.FilterOperator 2、field 阅读全文
posted @ 2018-10-30 09:32 遥远2 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 转自:https://blog.csdn.net/jack85986370/article/details/51483872 1、String: 主要用于存储字符串,显然不支持分页和排序。2、Hash: 主要用于存储key-value型数据,评论模型中全是key-value型数据,所以在这里Hash 阅读全文
posted @ 2018-10-30 09:32 遥远2 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 二、Mapping classes entity类上加注解:@Entity,其成员变量必须有@Id 其在mongodb中变量名: _id @Embedded,标示子类(子文档),用了@Embedded,@Id可以不存在。 例子: @Entity("employees"):标示mongodb中文档名为 阅读全文
posted @ 2018-10-30 09:31 遥远2 阅读(446) 评论(1) 推荐(0) 编辑
摘要: 1、简单 存储: 2、添加子集合 存储: 3、添加父 存储: 阅读全文
posted @ 2018-10-30 09:31 遥远2 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 下载:https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.3.tgz/download 解压:tar -zxvf mongodb-linux-x86_64-rhel70-4.0.3.t 阅读全文
posted @ 2018-10-30 09:31 遥远2 阅读(427) 评论(0) 推荐(0) 编辑
摘要: https://my.oschina.net/mdxlcj/blog/1859527 阅读全文
posted @ 2018-10-30 09:31 遥远2 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 报:Failed to mark a promise as success because it has succeeded already 解决: 法1:write方法中的promise去掉。因为,write中带参数 promise,会自动执行promise.setSuccess(); 法2:去掉 阅读全文
posted @ 2018-10-30 09:30 遥远2 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 改造timer,即客户端与服务端建立连接后,服务端主动向客户端发送当前时间。 server: TimeServerHandler TimeEncoder 注意: 1、在TimeServerHandler中,ctx.writeAndFlush(new UnixTime()),已经writeAndFlu 阅读全文
posted @ 2018-10-30 09:30 遥远2 阅读(114) 评论(0) 推荐(0) 编辑
摘要: ObjectEchoServer ObjectEchoServerHandler ObjectEchoClient ObjectEchoClientHandler 阅读全文
posted @ 2018-10-30 09:30 遥远2 阅读(142) 评论(0) 推荐(0) 编辑
摘要: StringRedisTemplate: 1)、只能存储string类型的值,因此不能存储如对象 2)、序列化为string,如: RedisTemplate: 1)、可以存储任意类型,含对象。 2)、序列化采用jdk的,如: 在java中能正确读取,但是在client中就是jdk序列化后的字符了, 阅读全文
posted @ 2018-10-30 09:30 遥远2 阅读(987) 评论(0) 推荐(0) 编辑
摘要: 总结: String类型的value(string/list/set/hash)使用StringRedisTemplate 其他类型的value(string/list/set/hash/object)使用RedisTemplate(GenericFastJsonRedisSerializer,va 阅读全文
posted @ 2018-10-30 09:30 遥远2 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 本节大纲: 1、Handler的执行顺序2、自定义二进制协议(每条完整数据的组成),从而解决拆包和粘包。3、通过为每个channel创建新的handler,从而解决即使handler中使用全局变量,也可以避免竞态条件。 1、Handler的执行顺序。 2、自定义二进制协议(每条完整数据的组成),从而 阅读全文
posted @ 2018-10-30 09:29 遥远2 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 从InBound里读取的ByteBuf要手动释放,还有自己创建的ByteBuf要自己负责释放。这两处要调用这个release方法。 write Bytebuf到OutBound时由netty负责释放,不需要手动调用release。 http://netty.io/wiki/reference-cou 阅读全文
posted @ 2018-10-30 09:29 遥远2 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 问题:我写了MyDecoder which extends ByteToMessageDecoder,单线程没问题,但是多线程时,报'the handler should be sharable'。查看ByteToMessageDecoder,发现其不能被@sharable。 解决: 在Channe 阅读全文
posted @ 2018-10-30 09:29 遥远2 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 客户端: 或者 或者 服务端: 1、继承SimpleChannelInboundHandler或ChannelInboundHandlerAdapter的server端 如果是短链接,必须在服务端关闭该channel。此时,才能通知到客户端的chanel.future.close()方法。 2、需要 阅读全文
posted @ 2018-10-30 09:29 遥远2 阅读(1163) 评论(0) 推荐(0) 编辑
摘要: 比特币就有用 C++ 实现的 Bitcoin Core,还有用 Java 实现的 BitcoinJ; 以太坊也有用 Go 语言实现的 go-ethereum,也有用 C++ 实现的 go-ethereum,还有用 Java 实现的 Ethereum(J)。 阅读全文
posted @ 2018-10-30 09:29 遥远2 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 一、DiscardClientHandler 1、发送消息 2、接收服务器返回的消息。由于服务端没有返回消息,所以此处忽略。 3、发送消息后,根据结果的处理。如果成功,继续发送消息;否则,抛出异常,关闭channel。 二、DiscardClient 运行结果: 服务端: 客户端: 阅读全文
posted @ 2018-10-30 09:28 遥远2 阅读(242) 评论(0) 推荐(0) 编辑