- 博客(14)
- 收藏
- 关注
原创 统一异常处理机制
异常统一处理的两种方式: 1、采用SpringMVC 的@ControllerAdvice + 实现 HandlerExceptionResolver接口 2、采用@ControllerAdvice + @ExceptionHandler 然后可以在 handle()方法里去处理各种异常分类,比如参数异常,大小格式等等,返回不同的错误码 还可以I18nHelper去做错误码国际化 第二种方式利用@ExceptionHandler,可以结合自己定义的类似ErrorResolvabl..
2020-12-07 21:49:57 681
原创 redis数据类型
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。 string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。 string 类型是 Redis 最基本的数据类型,string 类型的
2020-11-20 22:25:39 102
原创 2020-11-10
jvm内存模型: 多cpu的系统中,每个cpu都会有自己的告诉缓存,一般分为L1、L2、L3,这样可以减少主内存的查询压力,也带来了缓存一致性的问题。 指令重排: 代码在JVM执行的时候,为了提高性能,编译器和处理器都会对代码编译后的指令进行重排序。分为3种: a:编译器优化重排:编译器的优化前提是在保证不改变单线程语义的情况下,对重新安排语句的执行顺序。 b:指令并行重排:如果代码中某些语句之间不存在数据依赖,处理器可以改变语句对应机器指令的顺序 如:int x = 10;int ...
2020-11-10 22:30:27 234 1
原创 2020-11-08
人想法太多真的没用,在迷茫无聊的时候一定要选择沉下心去看看书,所谓开卷有益,光去想是没有用的,有自己喜欢的人,不论她是否真的在意你,因为是你喜欢别人,所以你要更多的承担,如果那个人是你对的人,那么不管过程有很多无聊或者坎坷,那么坚持下去,尊重她,爱护她,多为她着想,也给她更多的空间,彼此都是,只要结果是好的,那所有的都是值得的,哪怕结果不好,自己做好了自己的部分,其他的交给缘分吧。只有增强自己,将技术变强,薪资变高,这才是有担当的表现,才能更有能力的去爱护自己爱的人,而非嘴上天天念叨。加油吧,人生的路还有很
2020-11-08 21:59:55 811
原创 2020-11-04
mysql server层 :连接器 ->分析器 ->优化器 ->执行器 存储引擎:执行器与存储引擎连接 redo log 和 bin log redo log 是Inno db存储引擎特有的,大小是固定的,是循环写的 当数据库执行更新操作的时候,会先把更新记录到redo log并更新内存Inno DB引擎会在合适的时候将数据写入磁盘中 redo log 有crash-safe的能力 而bin log是server层的归档日志,是追加写的 数据库的 ACID 原子..
2020-11-04 10:59:48 94
原创 2020-10-12
java类加载机制 装载 、链接(验证、准备、解析)、初始化 装载:JVM查找并读取class二进制文件的过程 可以使用系统提供的类加载装置也可以自定义(双亲委派机制) 链接: 1、验证 :验证文件格式是否满足JVM的规则 2、准备:为类的静态变量分配内存,并初始化默认值 3、解析:将常量池中的符号引用替换成直接引用 初始化: 初始化阶段是为静态变量赋予正确的初始值,并执行类中的静态代码块。 双亲委派模型机制 双亲委托模型的工作过程是:如果一个类加载器(ClassLoader)收.
2020-10-12 20:29:03 79
原创 2020-10-11
手动实现一个RPC框架 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 RPC =Remote Procedure Call,远程调用服务协议 RPC跟HTTP服务协议有什么区别可以看看https://blog.csdn.net/wangyunpeng0319/article/details/78651998,文章里说的很...
2020-10-11 12:02:49 188
原创 Spring Boot 学习之旅
Sping和Spring Boot一直在用,但是却未曾系统的学习过,最近刚好能系统的学习一遍,在这里算是做个笔记吧
2020-07-02 15:54:36 141 1
原创 Double类型变为BigDecimal之后精度变了
//直接将Double转BigDecimal public static void main(String[] args) { Double testA = 0.0001; System.out.println(new BigDecimal(testA)); } //先将Double toString之后再BigDecimal public static void...
2019-01-17 17:40:48 619
原创 java编程思想(二) 一切都是对象
1、对象的引用 字符串可以用带引号的文本初始化,但是通常必须对对象采用一种更通用的初始化方法,那就是用NEW关键字。 2、内存分配(需要阅读java内存模型) 1)寄存器 2)堆栈 存着基本数据类型的值和对象的引用 3)堆 存着所有的java对象(由NEW产生的) 4)常量存储 5)非RAM存储 流对象和持久化对象 3、特烈:基本类型 基...
2019-01-08 20:46:21 93
转载 java编程思想(按位运算符和移位运算符)
java按位运算符(操作符) 按位运算符是来操作整数基本数据类型中的单个“比特”(bir),即二进制位,位运算符会对两个参数中对应的位执行布尔代数运算,并最终生成一个结果。 位运算符来源于C语言面向底层的操作,在这种操作中经常需要直接操作硬件,设置硬件寄存器内的二进制位。Java的设计初衷是为了嵌入电视机机顶盒,所以种面向底层的操作仍被保留了下来。 1、“与”...
2019-01-08 20:32:29 244
原创 Column 'language' in where clause is ambiguous
该错误是在mybatis中由于查的多个表中都有同一个字段,而没有指定该字段是哪个表的,导致出现了模棱两可的情况 sql如下: <select id="selectListByParam" resultMap="BaseResultDtoMap"> select pn.id,p.`name` as en_name,p.short_name,p.chinese_name, pn.noti...
2019-01-04 10:59:09 381
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人