用户头像

LSJ

微笑面对每一天

2018.11.11 加入

一个具有N年编程功力却早已拥有2N年工作经验的boy
关注
  • 7

    发布数

  • 2

    关注者

  • 0

    关注了

将设计模式应用到日常的 curd 中—分离关联查询

看一个例子:在我们给客户端提供的接口中,有一个是要查询用户发布动态的列表。那么在接口的返回值中就需要包含 userName、*headPhoto* 这两个属性。一种做法是: 通过写一条关联查询(动态表和用户表)的 sql 语句,一次性返回客户端用到的所有信息。

由一次管理后台定时推送功能引发的对 RabbitMQ 延迟队列的思考 (二)

在 RabbitMQ 中,带有过期时间的消息并不会在队列中自动丢弃。所以如果一个队列中的消息都带有 TTL 值的话,最好能有消费者去订阅此队列,这样就能够保证那些已经过期但还没有被抛弃的消息,能够尽快被丢弃或者被当成死信路由到死信队列中。

由一次管理后台定时推送功能引发的对 RabbitMQ 延迟队列的思考 (一)

有天下午,同事问了一个问题:有没有遇到过带 TTL 的消息不能自动过期导致该条消息无法被路由到死信队列的问题。

工厂模式(四)泛型工厂之 MyBatis Mapper 代理

在 MyBatis 框架中,为了能操作数据库,执行 sql 语句,需要定义 Mapper 接口文件和对应的 xml 文件,比如 UserMapper.java 和 UserMapper.xml。然后就可以在 Service 层直接注入 UserMapper 实例。其实 UserMapper 对象是代理对象。

工厂模式(三)泛型工厂的概念以及示例代码

泛型工厂主要用于创建泛型实例。是一种更通用的范围更广的工厂方法 ;因为泛型工厂方法返回的不再是具有某个范围的对象,而是直接返回泛型对象或者是泛型的协变类型对象。不过话说回来,这种技术的使用场景在哪里,为什么要创建泛型对象?

工厂模式(二)MyBatis 中展示的简单的工厂模式

在实践中学习才是更古不变的道理,那些最无意义的如玩具般娇小的代码只能够为了演示基本概念,也正因为此,才需要我们去学习开源框架学习优秀的代码。所以我们使用 MyBatis 框架中的 DataSource 模块作为例子来深入理解工厂模式。

工厂模式 (一)简单的工厂模式概念以及示例代码

在现实生活中有各种各样的制造生产类型的公司,比如有生产罐头的公司,有制造电脑的公司,有生产汽车的公司。所有类似的这些公司都可以称之为工厂,各种各样的工厂。这些工厂的作用往大了说只有一个那就是制造产品。

Nginx支持QUIC/HTTP3的实现路径和实践思考

Nginx支持QUIC/HTTP3的实现路径和实践思考

LSJ