2 weixin_41247813

尚未进行身份认证

暂无相关简介

等级
TA的排名 21w+

常用的mysql查询--mybatis

1. <select id="getOrdersGoodByTime" resultMap="BaseResultMap">        select        distinct resourceId,goods_name(去掉俩个字段都重复的情况)        from orders_goods        <where>            &lt...

2018-11-09 23:01:38

反面法

反面法:在实际的代码编写的过程中,我们常常困于从正面思考会出现问题,但是倒过来思考往往会简单很多!|举例:做过的行业云项目 问题:我们在查询账单信息的时候,顺便从我们数据库中取出商品名! 原思路:先从我们库中去查询商品名和resourceId,然后根据resourceId去第三方去调接口! 问题:因为从我们库中取出的resourceId去第三方接口查询的时候,可能会出现查询不到这样的...

2018-11-09 22:56:12

map在实际项目的中妙用

1.需求描述:在批量编辑购物车的时候,考虑到因为阶梯价不同,导致商品编辑的库存超过总库存!比如这样的数据:[{"cartId":"1","goodsId":1,"skuId":"1","deliveyId":"1","number":1},{"cartId":"2","goodsId":1,

2018-11-09 22:46:29

常用的linux命令

1.cat catalina.out | grep c.t.service.orders.api.AppletController--------具体定位到某一个错误日志

2018-11-09 21:58:08

idea中git的版本回退

git的版本回退的前提:回退的版本必须是已经提交的版本参考:https://blog.csdn.net/gomeplus/article/details/78241070问题:自己的远端被污染了怎么办?第一种方式:git push -f第二种方式:git push origin –delete <分支名> 再推到新建的分支 ...

2018-11-08 13:42:10

一.什么是栈?1.后进者先出,先进者后出,这就是典型的栈结构。2.从栈的操作特性上来讲,是一种操作受限的线性表,只允许在端插入或删除。类比:摆盘子,后放者在上面,先放者在下面。二.为啥需要栈1.栈是一种操作受限的数据结构,其操作特性用数组或者链表均可实现。2.任何数据结构都是对特定应用场景的抽象,数组和链表虽然使用起来比较灵活,但却暴露了所有的操作,难免比较危险。3...

2018-10-23 09:26:18

Java使用正则表达式去除小数点后面多余的0功能

直接上代码 BigDecima(10,2)--->在转化为字符串的时候会加上后面的0------》比如BigDecimal a=79;String ss=a+""--->ss=79.00这个时候就会要把后面的0去掉/** * 去掉多余的.与0 * @author Hust * @Time 2011-11-7 */public class TestString...

2018-10-10 17:04:14

数组与链表之于cpu缓存

cpu的缓存机制:cpu从内存中读取数据的时候,会先把读取的数据加载到cpu的缓存中。而cpu每次从内存中读取数据并不是只读取那个特定要访问的地址,而是读取一个数据块(视情况而定一段连续的内存地址)并保存到cpu的缓存中,然后下次访问内存数据的时候就会先从cpu缓存开始查找,如果找到就不需要再从内存中取。这样就实现了比内存访问速度更快的机制,这同时也是cpu缓存存在的意义:为了弥补内存访问速度过慢...

2018-10-08 15:25:39

如何实现LRU缓存淘汰算法

缓存是一种提高数据读取性能的技术,比如常见的cpu缓存以及浏览器缓存!但是缓存的大小有限,当缓存用满的时候,哪些数据应该被清理出去,哪些数据应该被保留?解决方案:FIFO--->先进先出      LFU---> 最少使用    LRU-->最近最少使用 比方:买来很多技术书太占用书房空间了,这时候会选择扔掉一些书籍,但是采取啥样的策率呢?一般就是上面三种策率!问题:...

2018-10-06 09:54:22

为啥编程语言中的数组都从0开始编号?

我们在学习任何一种语言的时候,都会遇到数组这种数据类型,但是你是否下意识的想过为啥数组的下标是从0开始编号,而不是从1开始编号?1.首先来对数组做一个定义:数组(Array)是一种线性表数据结构,它用一组连续的内存空间,来存储一组具有相同类型的数据。1)名词解释---线性表:线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后俩个方向!线性表与非线性表做对比:...

2018-10-03 16:39:18

分布式系统的基石--序列化以及反序列化

1.序列化的意义序列化:就是把对象变为可存储或者可传输的形式过程---》把对象转化为字节序列反序列化:就是序列化的逆向过程,把字节序列恢复为对象2.序列化面临的挑战序列化的俩个重要指标:1.序列化以后数据的大小 2.序列化操作对本身操作系统的开销java语言本身对序列化提供了支持,也是java语言本身最重要的底层机制之一,java本身提供了序列化机制存在俩个问题1.序列...

2018-10-02 10:33:11

https协议的原理

https简介:https相对于http,在于它对数据进行了一层加密,相当于 http+SSL/TLS那么http---》https的演变经历哪些问题与思考?1.既然对数据加密,那我们使用对称数据加密产生问题:2.非对称加密就是说我们所有客户端都是用统一的公钥进行加密,然后在服务端用私钥进行解密!问题:我们客户端的公钥从哪去拿?1).通过服务端去分发...

2018-09-30 17:47:20

时间复杂度

一般情况下,我们程序中的时间复杂度主要分为4种,分别是:1.最好情况时间复杂度:判断代码最快结束的情况2.最坏情况时间复杂度:判断代码最慢结素的情况3.平均情况时间复杂度:考虑每种可能情况执行的次数K以及对应的概率P之和(也就是我们经常说的期望)4.均摊时间复杂度:代码块的执行存在俩种截然相反的时间复杂度的情况,一般取出现频率最多的情况为时间复杂度!举例:在这段代码中...

2018-09-29 14:08:03

滑动窗口

常规收发数据的方式:这里既有发送缓存区又有接收缓存区,但是有一个问题是假设我是发送方,我源源不断地给接收方发送数据,这个时候接收方来不及接收,这个时候就会出现丢包的问题!这个场景就类似于,打电话的时候让别人记电话号码,别人一般一下子只能记住4个数字,通常的报数:1345 6789 321 先说4个字母等到对方确认收到之后再接着说后面4个字母!如何解决这个问题呢?这就引入了滑动窗口这...

2018-09-27 17:12:37

一个 http 请求在整个网络中的请求过程!

1.以我们访问www.baidu.com为例,首先是去访问DNS获取到对应的ip,接下来的流程如下图 当然,上面这俩张图纯粹只是发请求到服务器接收!同样的,服务器响应到浏览器也是同样的过程问题1:在网络传输的过程当中,会出现报文丢失这一种情况,因为IP协议只是一个尽力而为的协议,那这种情况怎么处理?方案:在传输层提供俩种可供选择的协议,Tcp和Udp协议,其中Tcp协议可以...

2018-09-27 12:00:06

常用视频截图的俩种方式

1.ffmpeg这种方式需要我们安装ffmpeg这个客户端软件!然后在java代码中打开程序并且截图!直接上代码:---------》ffmpegPath:ffmpeg安装的路径  upFilePath:视频的路径 (可以是线上地址) mediaPicPath:截图想要存放的路径 String url = AbstractOssClientUtil.putObject(picture...

2018-09-26 21:11:07

cdn加速

名词解释:DNS:万维网上作为域名和IP地址相互映射的一个分布式数据库,让用户更加方便的去访问互联网,而不用去记可以被计算机识别的IP串。CDN:内容分发网络!目的让用户能够就近访问内容,提高命中率!传统的访问网络的流程:步骤:1.用户通过浏览器访问一个域名 2.从DNS获取与域名一一对应的IP地址,返回给 浏览器3.浏览器通过获取的IP访问相应的主机4.主机根据相应的请求返回...

2018-09-26 12:15:19

如何过滤表情

我们一般在项目中会遇到用户输入表情,然后我们按照正常的方式存储到数据库中,结果取出来就变成来乱码!那今天我们就来解决如何处理表情的问题!1.引入maven依赖<dependency> <groupId>com.vdurmont</groupId> <artifactId>emoji-java</artifactId&g...

2018-09-25 10:07:10

redis---芝麻信用分

遇到的问题:redis存储数据key固定数据覆盖的问题问题描述:步骤:1.前端调用获取芝麻信用分接口2.在获取芝麻信用分接口中调用支付宝接口,获取芝麻信用分3.支付宝在异步回调中推给我们芝麻信用分4.根据芝麻信用分去更新入库出现问题:1.调用获取芝麻信用分接口,这个时候要用redis保存nailUserId,以及nailCropId,在回调里面去去做更新!但如果...

2018-09-19 23:38:35

业务--复杂度

业务:产品制定的需求!例如:原思路:1.先查询出店铺相关的信息2.根据shopId分别去查询店铺销售总额和收益,邀请分润,平台奖励--放入一个集合中3.根据集合中销售总额的属性进行排序附上关键代码:Collections.sort(dataList, new Comparator<Map>() { /* * int compare(Map...

2018-09-19 20:37:51

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!