摘要:
一、简介 后台业务入口类Controller,对于入参的合法性校验,可以简单粗暴的写出一堆的 if 判断,如下: @RestController @RequestMapping("user") public class UserController { @PostMapping("saveUser" 阅读全文
摘要:
一、说明 拥抱Springboot,基于各种读取配置类的形式,了解常见IOC底层注解实用。 二、注解详解demo 2.1、配置定义bean @Configuration public class MainConfig { /** * 注意,当 @Bean 没有指定value或者name的时候,默认的 阅读全文
摘要:
一、问题现象 top 命令查看显示服务器负载情况,服务器负载1.31,而且长时间没降下去,CPU使用率99.9%也异常飚高 load average :系统平均负载均值,三列分别代表 1分钟、5分钟、15分钟。理论上,值越小越好。负载越高,说明可能跑的程序出现异常情况。 一般,如果只是 1 分钟内的 阅读全文
摘要:
一、简介 ThreadLocal 是JDK提供的一个操作线程本地变量的工具,填充的数据隶属于当前操作线程栈,变量数据相对于其他线程是不可见的,起到数据隔离的作用,规避线程安全问题。 一个简单的代码示例如下: public class ThreadLocalTest { public static v 阅读全文
摘要:
0、主题 推荐 Xcode-Dark,舒适 1、Lombok Lombok为Java项目提供了一些非常便捷的注解,减少大量的重复的工作,例如Getter、Setter等。谁用谁知道,好用。 2、Free Mybatis plugin mybatis扩展插件,实现 Mapper 和 xml 之间的快速 阅读全文
摘要:
一、简述 Java对象的四种引用:强软弱虚。通过四种引用的使用,开发者通过代码去决定对象的生命周期,从而有利于JVM的垃圾回收。在各种面试环节中被问及的频率也是相当高的,比如对于弱引用,一般结合到ThreadLocal。除了强引用,其他几种引用都是借助于引用类去完成的。 二、强引用 基本上,开发者都 阅读全文
摘要:
1、关于大小写 MySQL默认大小写不敏感,也就是不区分大小写。至于怎么设置怎么查看,百度有很多,不多说。这里记录的是,如果由于种种原因,导致库表中存在部分的无效的小写的数据该如何查询出来 其中的 BINARY关键字就是设定 where 子句区分大小写。 2、 未完待续.... 阅读全文
摘要:
一、简介 系统的架构,已从最早的单体式架构(一个war包完事)逐渐发展到目前的微服务式架构。微服务,将一个大型的复杂的应用系统,拆分成若干独立的松耦合的小的服务工程,每个服务工程可独立部署,每个服务只需要关注一类任务即可。微服务式架构目前比较代表性的技术有:Dubbo、SpringCloud等。 D 阅读全文
摘要:
一、概述 HashMap,基于哈希结构的Map接口的一个实现,无序,允许null键值对,线程不安全的。可以使用集合工具类Collections中的synchronizedMap方法,去创建一个线程安全的集合map。 在jdk1.7中,HashMap主要是基于 数组+链表 的结构实现的。链表的存在主要 阅读全文
摘要:
一、简介 锁的概念,在Java日常开发和面试中,都是个很重要的知识点。锁能很好的控制生产数据的安全性,比如商品的数量超卖问题等。传统的做法中,可以直接利用数据库锁(行锁或者表锁)来进行数据访问控制。随着请求量逐步变多的情况下,将压力怼到数据库上会对其性能产生极大影响。这时候,单体应用中可以利用JVM 阅读全文