前几天,远在北京的小伙伴在群里抛出了“MapStruct”的概念。对于只闻其名,未见其人的我来说,决定对其研究一番。本文我们就从 MapStruct 的概念出发,通过具体的代码示例来研究它的使用情况,最后与“市面上”的其它工具来做个对比!
本质上,JVM 并不支持语法糖,语法糖只存在于编译期。当编译器将 .java 源文件编译成 .class 字节码文件时,会进行解语法糖的操作,来还原最原始的基础语法结构。
故事会迟到,但他从不会缺席。今天的故事开始了,你准备好了吗?
相信大家在开发过程中都用到过数据分页吧,那么问题来了,说出你平时用到的几种分页方式吧?而我在平时的工作中用到最多的应该属PageHelper这个分页插件了,此处附上官网地址:[https://pagehelper.github.io/](https://pagehelper.github.io/)
故事的开头总是这样,适逢其会、猝不及防。今天我哼着“也是黄昏的沙滩上,有着脚印两对半......”在海边散步,迎面走来了一位身穿黄金甲的男子,来海边还穿这么花哨,真是个傻X。定睛一看,这不是嘉文吗?
提到点赞,大家一想到的是不是就是朋友圈的点赞呀?其实点赞对我们来说并不陌生,我们经常会在手机软件或者网页中看到它,今天就让我们来了解一下它的实现吧。我们常见的设计思路大概分为两种:一种自然是用MySQL等数据库直接落地存储, 另外一种就是将点赞的数据保存到Redis等缓存里,在一定时间后刷回MySQL等数据库。
前几天收到一个新的需求,需要实现类似“附近的人”的功能:根据自己当前的定位,获取距离范围内的所有任务地点。刚看到这个需求时有点懵逼,第一想到的就是要利用地球的半径公式去计算距离,也就是把地球想成一个球体,去计算球上两点之间的距离。可想而知,这样的方法效率会比较低,每条数据都要来与本人的坐标做计算,太过繁琐。经过大佬的指点,想到了用redis自带的GEO来实现此功能。
服务器上的Redis已经安装完成了(安装步骤见上篇文章),今天就让我们使用Redis来做个小功能:自定义拦截器限制访问次数,也就是限流。
说了那么多redis的知识,好多小伙伴想直接查看redis的配置文件,今天我们就来说一下在CentOs中安装redis吧!
当我在写一上来就主从、集群、哨兵,这谁受得了的时候,好多小伙伴就迫不及待的留言想看这些模式了,今天我们就从配置文件、设计原理、面试真题三个方面来聊一聊 Redis 的主从复制。
前边我们已经介绍了`Redis`**五种数据类型的命令**与**配置文件的基本配置**,今天让我们从理论和配置两个层面来揭开`Redis`持久化的神秘面纱。
在往期的文章中我们已经对 Redis 的概念和基本命令进行了讲解,今天我们来看下它的配置文件,Redis 的配置文件在我们的开发和实际应用中起着非常重要的作用。
一提到`Redis`,大家听到最多的应该就是“主从”、“集群”、“哨兵”了吧。对于不太精通的同学来说,乍一听这些概念,有的人会心向往之,有的人会望而却步。
Good morning, everyone!之前我们已经说过用Shiro和JWT来实现身份认证和用户授权,今天我们再来说一下Security和JWT的组合拳。
前几天给大家讲解了一下shiro,后台一些小伙伴跑来给我留言说:“一般不都是shiro结合jwt做身份和权限验证吗?能不能再讲解一下jwt的用法呢?“今天阿Q给大家讲一下shiro整合jwt做权限校验吧。
大家早上好,今天阿Q给大家带来的小知识是shiro。不知道大家在平时的工作和学习中是否使用它进行过身份验证与鉴权呢?接下来就让阿Q带大家一起来学习并实践一下。
我们在上篇文章中提到了记录锁(行锁)、间隙锁和临键锁,后台有小伙伴催我更新一下其他的锁。拖延症又犯了,趁周末,今天我们来总结一下`MyISAM`和`InnoDB`引擎下锁的种类及使用方法。
最近要在公司内做一次技术分享,思来想去不知道该分享些什么,最后在朋友的提示下,准备分享一下`MySQL`的`InnoDB`引擎下的事务幻读问题与解决方案--`LBCC`&`MVCC`。经过好几天的熬夜通宵,终于把这部分的内容捋清楚了。
之前我们已经了解过“运行时数据区”的程序计数器、虚拟机栈、本地方法栈和堆空间,今天我们就来了解一下最后一个模块——方法区。
尽管不是所有的对象实例都能够在TLAB中成功分配内存(因为它的空间比较小),但JVM明确是将TLAB作为内存分配的首选;一旦对象在TLAB空间分配内存失败时,JVM就会尝试着通过使用加锁机制确保数据操作的原子性,从而直接在Eden空间中分配内存。
今天阿Q为大家准备了上好的“醒酒菜”——`JVM`运行时数据区的核心内存区——堆。
虚拟机栈5连问,一听心里就乐了
方法调用是不是很熟悉?那你真的了解它吗?今天就让我们来盘一下它。
相信大家在上篇文章中已经对类加载子系统有了清晰的认识,接下来就让我们来揭开“运行时数据区”的神秘面纱吧。
上篇文章中我们知道了JVM是个啥?这篇文章(通篇文章都是以HotSpot JVM为例)就让我们来了解一下类加载子系统(ClassLoader)--负责从文件系统或者网络中加载Class字节码文件,并将加载的类信息(DNA元数据模版,jvm会根据这个模版实例化出n个一模一样的实例)存放于“方法区”(接下来的文章中会做具体的介绍)中。
大家在平时的开发过程中是否遇到过`StackOverflowError`、`OutOfMemoryError`等类似的内存溢出错误呢?大家又是怎么解决这个问题的?
那么ES是怎么将索引从内存中同步到磁盘上的呢?今天我们就来说一下ES的存储原理(搬着小板凳坐好)
ES 支持 PB 级全文搜索,当索引上的数据量太大的时候,ES 通过水平拆分的方式将一个索引上的数据拆分出来分配到不同的数据块上,分布在多台服务器上存储,拆分出来的数据库块称之为一个分片。
不知道大家在项目中是否使用过ElastricSearch?大家对它的了解又有多少呢?今天我们就来揭开一下它的神秘面纱。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号