- 博客(7)
- 资源 (5)
- 收藏
- 关注
转载 mysql数据库如何进行优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引 。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。 3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num i...
2018-11-30 10:53:30 478
原创 spring 缓存 @CachePut 和 @Cacheable 区别
首先这两个的区别是: @CachePut:这个注释可以确保方法被执行,同时方法的返回值也被记录到缓存中。 @Cacheable:当重复使用相同参数调用方法的时候,方法本身不会被调用执行,即方法本身被略过了,取而代之的是方法的结果直接从缓存中找到并返回了。 @CachePut和@Cacheable这两个标签可以结合使用,当需要根据请求改变值的时候,利用@CachePut将值改变并写入到缓...
2018-11-26 11:20:38 1986
原创 springboot升级为2.0版本, server.context-path不生效
不知不觉,新的项目已经将springboot升级为2.0版本了.刚开始没有配置server.contextpath,默认的“/”,然后今天放到自己的服务器上,所以就要规范名称。 结果,失败了,无论我怎么配置,总是在启动后日志打印说 :path:"" 、 正确姿势:server.servlet.context-path:"/url" ...
2018-11-14 16:57:09 3645
原创 什么是一致性Hash算法?
在缓存系统部署的时候,常见的办法就是取余。hash(value)%N,但这有一种扩展的问题,从好的或者坏的来看,这种算法局限性比较明显。 如果有一台服务器坏了,那就变成了hash(value)%(N-1),这个时候之前的hash都有错误了;如果要增加一台服务器,那就变成了hash(value)%(N-1),这个时候之前的hash值都有问题了。 一致性hash的思...
2018-11-05 19:04:29 922
转载 Java之Lambda表达式10个示例
例1、用lambda表达式实现Runnable 我开始使用Java 8时,首先做的就是使用lambda表达式替换匿名类,而实现Runnable接口是匿名类的最好示例。看一下Java 8之前的runnable实现方法,需要4行代码,而使用lambda表达式只需要一行代码。我们在这里做了什么呢?那就是用() -> {}代码块替代了整个匿名类。 // Java 8之前: new Thread...
2018-11-03 19:22:53 374
原创 乐观锁和悲观锁
乐观锁 每次获取数据的时候,都不会担心数据被修改,所以每次获取数据的时候都不会进行加锁,但是在更新数据的时候需要判断该数据是否被别人修改过。如果数据被其他线程修改,则不进行数据更新,如果数据没有被其他线程修改,则进行数据更新。由于数据没有进行加锁,期间该数据可以被其他线程进行读写操作。一般使用version方式和CAS操作方式。 Version方式: 一般是在数据表中加...
2018-11-02 19:55:17 933
原创 算法小技巧
1、巧用数组下标 n个无序的int整型数组arr,并且这些整数的取值范围都在0-20之间,要你在 O(n) 的时间复杂度中把这 n 个数按照从小到大的顺序打印出来 public static void main(String[] args) { int[] arr = new int[] {13, 13, 5, 7, 8, 17, 14, 7, 9, 13, 19, 14,...
2018-11-02 19:25:35 1015
深入理解Java虚拟机(第2版)
2018-04-17
git提交代码注释规范
2018-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人