摘要:
Shiro简介 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 Shiro架构与功能介绍 1.认证与授权相关基本概念 两个基本的概 阅读全文
摘要:
一、单表中数据去重 将重复的:user_code,user_name 的记录去掉 delete * from user WHERE del_flag = '0' and id NOT IN ( SELECT MIN(id) AS id FROM user where del_flag = '0' G 阅读全文
摘要:
假如有个表product有个字段add_time,它的数据类型为datetime,有人可能会这样写sql: 代码如下 select * from product where add_time = '2013-01-12' 对于这种语句,如果你存储的格式是YY-mm-dd是这样的,那么OK,如果你存储 阅读全文
摘要:
mysql字符串进行加减乘除的运算: 在mysql当中,字符串类型间进行加减乘除运算的时候,会截取字符串以数字开头的那一部分数字进行运算, 如果字符串前面没有数字,那么就只能截取的数值为0,那么进行加减的时候结果都是0,进行乘除的时候结果都是NULL,如下几个结果说明问题: mysql> selec 阅读全文
摘要:
一、数字函数二、字符串函数三、日期函数四、MySQL高级函数(一)数字函数1、ABS(x) 返回x的绝对值 SELECT ABS(-1); 返回1 2、AVG(expression) 返回一个表达式的平均值,expression 是一个字段 SELECT AVG(age) FROM student; 阅读全文
摘要:
从JVM区域结构看,可将这些区域划分为“静态内存”和“动态内存”两类。程序计数器、虚拟机栈、本地方法3个区域是“静态”的,因为这几个区域的内存分配和回收都具备确定性,都随着线程而生,随着线程而灭。 但Java堆和方法区不一样,内存分配都存在不确定性,只有在程序处于运行期间才能知道会创建哪些对象,这部 阅读全文
摘要:
判断对象是否存活还是死亡?两种基础的垃圾回收算法:引用计数法、可达性分析算法。 那么接下来我们重点研究下虚拟机的几种常见的垃圾回收算法:标记-清除算法、复制算法、标记-整理算法、分代收集算法。 一:标记-清除算法 最基础的收集算法,总共分为‘ 标记 ’和‘ 清除 ’两个阶段 1.标记 标记出所有需要 阅读全文
摘要:
一:概述 在这篇文章中《Jvm运行时数据区》介绍了Java内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈,3个区域随着线程的生存而生存的。-- 备注:线程私有, 而方法区、堆区,线程共享 内存分配和回收都是确定的。随着线程的结束内存自然就被回收了,因此不需要考虑垃圾回收的问题。而Ja 阅读全文
摘要:
1.概述 虚拟机加载Class文件(二进制字节流)到内存,并对数据进行校验、转换解析和初始化,最终形成可被虚拟机直接使用的Java类型,这一系列过程就是类的加载机制。 2.类的加载时机 类从被虚拟机加载到内存开始,直到卸载出内存为止,整个生命周期包括:加载——验证——准备——解析——初始化——使用— 阅读全文
摘要:
目录 一、介绍 二、使用 2.1 UUID 2.2 ObjectId 2.3 Snowflake 三、测试类 3.1 测试类 3.2 测试结果 一、介绍在分布式环境中,唯一ID生成应用十分广泛,生成方法也多种多样,Hutool针对一些常用生成策略做了简单封装。 唯一ID生成器的工具类,涵盖了: UU 阅读全文