groovy用途

1.groovy基础知识 参考教程 gradle导包:compile “org.codehaus.groovy:groovy-all:${groovyVersion}” 2.groovy对java的拓展 1.动态性 单纯的java语言是不具有动态性的,groovy恰恰弥补了这一缺憾,有了groovy你可以在程序运行时任意修改代码逻辑,不需要重新发布,groovy的弱类型让你不用再面对各种类型转换问题。 2.语法糖 groovy在语法上兼具java 语言和脚本语言特点,大大简化了语法。 3.使用
分类: 其他 发布时间: 11-01 23:54 阅读次数: 0

git知识点

一、删除分支: 查看所有分支 git branch -a 删除本地分支 git branch -d 删除远程分支 git push origin --delete 查看远程库信息,可以看到一些本地存在但远程已被删除的分支(git branch -a 看不到此信息) git remote show origin 删除本地在远程已经不存在的分支 git remote prune origin
分类: 其他 发布时间: 11-01 23:53 阅读次数: 0

feign接口使用JSONObject作为参数遇到的问题

首先有几个小知识点需要强调一下: 当方法的参数是对象时,参数其实是对象引用的拷贝 对象的hashCode是两个对象equals的依据,但hashCode相等不代表他们是同一个对象。 验证两个对象是否是同一个对象,可以使用“==“。 先上出现问题的代码 feign接口 import com.alibaba.fastjson.JSONObject; import org.springframework.cloud.netflix.feign.FeignClient; import org.spri
分类: 其他 发布时间: 11-01 23:53 阅读次数: 0

算法-优先队列与堆排序

优先队列 许多应用程序都需要处理有序的元素,但不一定要求他们全部有序,或是不一定要一次就将他们排序。很多情况下我们会收集一些元素,处理当前键值最大的元素,然后再收集更多元素,再处理当前键值最大的元素,如此这般。 在这种情况下,一个合适的数据结构应该支持两种操作:删除最大元素和插入元素。这种数据类型叫做优先队列。 API interface MaxPQ<Key extends Comparable<Key>>{ void insert(Key k); //向优先队列中插入一个元素
分类: 其他 发布时间: 11-01 23:53 阅读次数: 0

spring boot笔记整理

spring boot 了解 这个博客不错 Spring Boot Actuator权限问题 spring cloud stream学习 首先要了解rabbitmq rabbitmq进一步了解 rabbitmq下载安装(mac): 执行命令:brew install rabbitmq 然后等一年就好了 安装和基本启动操作其实官网都有 安装成功后注意最后几行的打印信息,我的是这样: Management Plugin enabled by default at http://localhost:
分类: 其他 发布时间: 11-01 23:52 阅读次数: 0

算法-查找(红黑树)

查找 符号表 最主要的目的是将一个键合一个值联系起来。用例能够将一个键值对插入符号表并希望在之后能够从符号表的所有键值对中按照键直接找到对应的值,即以键值对为单元的数据结构。 无序链表顺序查找 性能:N方 有序数组二分查找 代码 public int rank(Key key){ int lo = 0,hi = N-1; while(lo <= hi){ int mid = lo + (hi - lo)/2; int cmp = key.comp
分类: 其他 发布时间: 11-01 23:52 阅读次数: 0

其他符号表

散列表 如果键都是小整数,用一个数组实现无序的符号表,将键直接作为数组索引。这样我们就可以快速访问任意键的值。基于这种思想设计的数据结构就是散列表。 查找算法 1.使用散列函数将键转化为索引 优秀的散列函数满足: 一致性:等价的键必然产生相等的散列值 高效性:计算简便 均匀性:均匀地散列所有的键 2.处理碰撞冲突 处理碰撞冲突的两种方法:拉链法和线性探测法。 散列表是算法在时间和空间上作出权衡的经典例子。 拉链法: 线性探测法:数组的长度>键值对数 当碰撞发生时,我们直接检查散列表中的下一个位
分类: 其他 发布时间: 11-01 23:52 阅读次数: 0

如何设计redis分布式锁

文章目录 分布式锁的实现有哪些? 1.Memcached分布式锁 2.Redis分布式锁 3.Zookeeper分布式锁 4.Chubby 如何用Redis实现分布式锁? 1.加锁 2.解锁 3.锁超时 4.综合分析 1. setnx和expire的非原子性 2. del 导致误删 3. 出现并发的可能性 本文转自程序员小灰-漫画:什么是分布式锁?,主要为了方便自己复习去掉了很多很有意思但是有点占篇幅的漫画,首次学习可以去看原文。具体实现我已放在github,项目实现介绍,github项目传送
分类: 其他 发布时间: 11-01 23:52 阅读次数: 0

RabbitMQ管理

问题:rabbitmq的管理员密码忘掉了无法登录到管理界面 解决: 直接使用rabbitmqctl 这个命令与管理界面的功能基本相同,或者可以说管理界面就是对rabbitmqctl的图形化扩展。 使用示例: rabbitmqctl add_vhost test_host rabbitmqctl set_permissions -p test_host root ".*" ".*" ".*" 以下为rabbitmqctl的自我介绍 Usage: rabbitmqctl [-n <node>]
分类: 其他 发布时间: 11-01 23:51 阅读次数: 0

实现基于redis的分布式锁并集成spring-boot-starter

文章目录 概述 使用 1.导包 2.写一个实现锁功能的service 3.检查redis的key 4.调用(锁成功) 5.调用(锁失败) 实现 1.redislock如何实现 2.如何实现注解化 3.生成代理 集成spring-boot-starter 如果你还不了解什么是分布式锁请参考小灰的博客什么是分布式锁? 书接上文如何设计redis分布式锁,这篇文章对redis分布式锁进行了具体实现,并且将功能融入spring-boot,实现使用注解化,配置极简化。github地址在这里。 概述 此篇
分类: 其他 发布时间: 11-01 23:51 阅读次数: 0

Servlet 和Session的关系

jsp的Session和Servlet的Session本质上是一致的,区别是:jsp中session是作为隐式对象存在的,可以直接使用;Servlet中的session需要手动提取后才能使用. HttpSession是Java平台对session机制的实现规范,因为它仅仅是个接口,具体到每个web应用服务器的提供商,除了对规范支持之外,仍然会有一些规范里没有规定的细微差异。 1、session机制 http是无状态的协议,客户每次读取web页面时,服务器都打开新的会话,而且服务器也不会自动维护
分类: 其他 发布时间: 11-01 23:51 阅读次数: 0

springCloud分布式事务实战(六)编写第二个微服务

springCloud 实现第二个微服务
分类: 编程语言 发布时间: 11-01 23:51 阅读次数: 0

springCloud分布式事务实战(七)改造合服务BlockMicroService支持分布式事务

改造微服务参与分布式事务
分类: 编程语言 发布时间: 11-01 23:51 阅读次数: 0

2018-10-31直播笔记

6.1 压缩打包介绍关于网络带宽bit就是位,也叫比特位,是计算机表示数据最小的单位byte就是字节3.1byte=8bit4.1byte就是1B5.一个字符=2字节6.1KB=1024B1.字节就是Byte,也是B2.位就是bit也是b3.转换关系如下:1)1KB=1024B2) 1B= 8b所谓的一100M网络带宽是指100Mbit,也就是100MB除以8。所以100M网络带宽的最高峰值为12
分类: 企业开发 发布时间: 11-01 23:51 阅读次数: 0

IDEA中maven项目的导入导出

版权声明:转载请注明出处~ https://blog.csdn.net/Denny2333/article/details/83062268 一.maven项目的导出(zip,jar格式): (zip格式): (jar格式): 二.项目的导入(zip) 1.将文件压缩包解压 2.
分类: 其他 发布时间: 11-01 23:50 阅读次数: 0

浅谈2019苏宁易购校招面试

版权声明:转载请注明出处~ https://blog.csdn.net/Denny2333/article/details/83418632 昨晚面了(视频面试)苏宁易购(2019校招),全程跟不上面试官的的节奏,总结起来就是四个字,一脸懵逼....... 大概提前了半个小时进入了视频面试的房间,刚好面试官也上线了,然后就比约定时间早了半个小时开始面试,具体的一些面试问题如下(一些技术问题基于个人项目讲解来提出的): 自我介绍(大概一分钟左右介绍了自己的基本信息,说了一些简历上面没有的东西)。
分类: 其他 发布时间: 11-01 23:50 阅读次数: 0

算法练习week2--leetcode15

题目介绍 算法设计 第一阶段 三重for循环,从前到后遍历所有情况,时间复杂度为O(n^3)。 vector< vector<int> > threeSum(vector<int>& nums){ vector< vector<int> >sum; vector<int>temp(3); int x = 0; int num1,num2,num3; for(int i = 0;i < nums.size()-2;i++){ num1 =
分类: 其他 发布时间: 11-01 23:49 阅读次数: 0

算法练习week3--leecode792

题目描述 这道题的题目名称非常的难懂,但是读了题目内容以后,就不难理解了,定义函数f(x)为x!的末尾0的个数,现在给了我们一个非负整数K,问使得f(x)=K成立的非负整数的个数。 问题分析 之前做过一道有关阶乘末尾零的个数的题,从那道里知道了末尾0其实是由2和5相乘为10得到的,而阶乘中2的数量远多于5的个数,所以10的个数就只取决于5的个数。 需要注意的一点就是,像25,125,这样的不只含有一个5的数字需要考虑进去。比如,24的阶乘末尾有4个0,分别是5,10,15,20中的四个5组成的
分类: 其他 发布时间: 11-01 23:49 阅读次数: 0

算法练习week4--leetcode37

题目描述 Write a program to solve a Sudoku puzzle by filling the empty cells. A sudoku solution must satisfy all of the following rules: Each of the digits 1-9 must occur exactly once in each row. Each of the digits 1-9 must occur exactly once in each c
分类: 其他 发布时间: 11-01 23:49 阅读次数: 0

算法练习week5--leetcode684

一个无向图是否存在环 算法1: 我们知道对于环 1-2-3-4-1,每个节点的度都是2,基于此我们有如下算法(这是类似于有向图的拓扑排序): 求出图中所有顶点的度 删除图中所有度 <=1 的顶点以及与该顶点相关的边,把与这些边相关的顶点的度减一 如果还有度<=1的顶点重复步骤2 最后如果还存在未被删除的顶点,则表示有环;否则没有环 时间复杂度为O(E+V),其中E、V分别为图中边和顶点的数目。 算法2: 深度优先遍历该图,如果在遍历的过程中,发现某个节点有一条边指向已经访问过的节点,并且这个已
分类: 其他 发布时间: 11-01 23:49 阅读次数: 0