自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 获取用户手机操作系统工具类

public class RequestUtil { /** * 获取请求来源 * @param request * @return 0:安卓 1:IPHONE 3:WEB */ public static Integer getUserSource(HttpServletRequest request){ String userAgent = request.getH...

2019-12-03 17:33:05 130

原创 获取用户IP的工具类

public class IPUtil { public static String getIpAddress(HttpServletRequest request) { String ip = request.getHeader("x-forwarded-for"); if (ip == null || ip.length() == 0 || "unknown".equalsIgno...

2019-12-03 17:31:07 205

原创 FastJson和Gson的使用方法

1.fastJsona. pom.xml<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.58</version></dependency>b.api(1...

2019-11-13 10:22:11 205

原创 db和redis缓存的一致解决方法——图文并茂!

为什么db和redis缓存会不一致:高并发的情况下——update请求,value更新的那段时间,缓存中数据被删了,没有数据,此时select这条数据的所有请求进入数据库,但是update请求还没提交,此时select读出数据并写入缓存的都是更新前的数据,都是脏数据,在update更新数据库并写入redis这段时间,次数据的select查询的都是之前的脏数据。1.解决方法:select for...

2019-11-12 15:37:39 303

原创 http/https的url请求,GET、POST请求工具类

1.添加pom依赖<!-- jsoup --> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.10.2...

2019-11-11 16:24:28 839

转载 IDEA常用配置和常用插件

版权声明:本文为博主转载文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

2019-11-09 14:22:29 174

原创 Redis缓存击穿,穿透,雪崩原因及其解决策略

1.缓存雪崩:概念:当redis重启的时候/redis多个key同时失效时,整个redis基本上形同虚设,所有业务的请求直接进入数据库,导致数据库压力大,甚至直接挂掉。解决措施:a.在设置key的时候使用随机值,直接避免key同是失效的问题b.redis做集群,避免当前redis重启,导致整个缓存层失效2.缓存击穿:概念:和缓存雪崩类似,但是这里击穿,是指单个key失效的瞬间,比如...

2019-11-09 10:33:02 140

原创 Collections.sort()用法及其lambda用法

降序: Collections.sort(list, new Comparator<int>() { public int compare(int o1, into2) { return o2.compareTo(o1); } }); lambda写法: Colle...

2019-11-08 14:12:28 2948

原创 springboot+RabbitMQ做延迟消息详解(二)--插件延时,已运用到公司项目中

业务:双十一商品按指定时间上架;拼团活动按指定时间上下架;预售活动按指定时间上下架;优惠卷活动按指定时间上下架等;思路: 1.定时任务 --可行,但不合适缺点:因为活动会有很多很多,不知道这些活动的具体的上架时间,也就是说,定时任务只能设置每秒执行一次,服务器的压力大。2.死信来做延时 --不可行。死信原理:将消息投放到某队列中(表面队列),改队列无消费者,消息时间到了无法消费,...

2019-11-07 14:07:17 388

原创 springboot+RabbitMQ做延迟消息详解(一)死信延迟,已运用到公司项目中

业务:订单10分钟未支付,则自动取消订单思路:采用死信队列做延迟(该队列的所有消息的延时时间都是一样的才能用)死信概念:消费达到设置的时间未消费这变为死消息,进入配置的死信队列进行消费。原理:这样的话就可以将消息投放到某队列中(表面队列),改队列无消费者,消息时间到了无法消费,变为死消息,进入死信队列,进行正真的消费。注意点:这里死信做延迟,是把消息放到死信队列里做延迟的,也就是说放在队列...

2019-11-01 11:39:21 621 1

原创 mysql索引创建的两种方法及其区别,以及哪些字段适合做索引

方法一:alter table 表名 add index(字段名) ;方法二:create index 索引名 on 表名(字段名);区别:方法一 :1.索引名可不写,mysql自动生成,也可以加。例如:alter table 表名 add index index_A (字段名A) ;2.同时创建多个索引。例如:alter table 表名 add index index_A...

2019-10-30 19:10:40 666

原创 动态sql与模糊查询结合的简单处理

这里注意必须使用${name},不可以使用#{name},会报异常的,但这里可能会出现sql注入的问题。解决方法自行百度,这里只提供最简单处理方法

2019-09-16 14:42:32 394

原创 PageHelper使用demo

1.在pom.xml中添加如下:5.0.00.9.5 com.github.pagehelper pagehelper ${pagehelper-version} com.github.jsqlparser jsqlparser ${jsqlparser-version}2.在spring-mybatis中添加如下helperDiale...

2019-09-12 11:37:33 387

原创 mysql的去重distinct 并计算总和count

2019-08-31 11:48:23 11949

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除