自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringCloud-Alibaba+oauth 单点登陆

分别创建cloud-auth用于授权认证,cloud-comm用于存放公共类,cloud-service用于存放业务,cloud-gateway用于存放网关。总结:搭建授权认证服务器,在oauth配置文件种设置授权模式,访问授权站点得到授权码,通过授权码获得token。第一个参数表示授权的模式是什么,第二个是授权码,第三个是第三方登陆的用户是谁,第四个是把token返回到哪里。然后重新使用密码模式获取token,在授权使用无授权方式进行获取,也可以获取到token。token_type:token的类型。

2023-10-04 15:48:07 135 1

原创 Jdk8新特性

对集合中的元素根据年龄进行从大到小排序,排序规则接口Comparator的方法返回值如果是0,说明o1和o2相等,如果是>0说明o2比o1大,如果<0说明o1比o2小,然后通过集合的工具类将集合进行规则排序。我们指定使用Lambda表达式的前提是需要有函数式接口,而Lambda使用时不关心接口名,抽象方法名,只关心抽象方法的参数列表和返回值类型,因此为了让我们使用Lanbda方便,jkd提供了大量常用的函数式接口。当传入一个参数时,需要对一个参数进行判断时,就可以使用此函数。使用Lambda表达式。

2023-09-29 16:31:31 32

原创 Docker 第二章

Dockerfile是一个文本,任意一个镜像都是通过dockerfile来制作的文件包含了一条条的指令每一条指令构建一层,基于基础镜像,最终构建出一个新的镜像对于开发人员:可以为开发团队提供一个完全一致的开发环境对于测试人员:可以直接拿开发时所构建的镜像或者通过Dockefile文件构建一个新的镜像开始工作对于运维人员:在部署时,可以实现应用的无缝跨平台移植。

2023-09-10 21:34:26 35 1

原创 RabbitMQ 第二章

英文缩写:DLX。多个消费者同时收取消息,收取消息到一半,突然某个消费者挂掉,要保证此条消息不丢失,就需要acknowledgement机制,就是消费者消费完要通知服务端,服务端才将数据删除。简述:如果订单完成之后,需要为用户累加积分,有需要保证积分不会重复累加,那么在mq消费消息之前,先去数据库查询该消息是否已经消费,如果已经消费那么直接丢弃消息。当消息发送成功后,若无消费者进行消费,在20秒后到达死信交换机,再到达死信队列,通过监听死信队列,进入死信队列的都是超时消息,所以可以进行相关业务。

2023-09-06 11:11:53 36 1

原创 RabbitMQ

MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。它是应用程序和应用程序之间的通信方法。2007 年发布,是一个在 AMQP(高级消息队列协议)基础上完成的,可复用的企业消息系统,是当前最主流的消息中间件之一。RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue 高级消息队列协议 )的开源实现,由于erlang 语言的高并发特性,性能较好,本质是个队列,FIFO 先入先出,里面存放的内容是message。

2023-09-05 10:10:30 46 1

原创 Jenkins 第二章

接第一章,继续完成Jenkins自动化部署。

2023-09-04 11:20:34 39 1

原创 Jenkins

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。

2023-09-01 21:26:31 120 1

原创 Redis的使用场景

为避免这种事情发生,可以使用锁来控制线程,但是普通的自动锁只针对当前服务器的jvm,如果是一台服务器确实可以通过自动锁来解决,但当前是集群,也就是说大于1台的服务器,服务器之间没有办法共享这个锁资源,还是会导致数据的准确性丢失。把经常被访问的数据存储到redis中,以后再查找该数据时,优先从redis中查询,如果redis没有被命中,则才会查询数据。先创建一个买票的Springboot项目,然后编辑服务器配置,复制一份该配置,修改一个端口号即可代替两台的服务器,将这两个服务都跑起来。--使用了缓存的注解。

2023-08-31 19:52:49 24 1

原创 Redis 第三章

Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。通过名字不难看出,这是一个存放ip和端口号的对象,但因为集群是多个,所以创建一个set集合泛型为HostAndPort类型的对象存放集群中的ip和端口号。

2023-08-30 20:19:48 27 1

原创 Redis 第二章

这边添加一个新的set类型集合,设置几个元素,并查看这两个set集合的所有元素,集合的交集,就比如你和某个QQ好友的共同好友,在set中就表示,几个集合共同拥有的元素。通过该命令可添加一个set类型的集合,添加了四个值,但返回显示添加了3个,因为添加了一个重复的值,set不能有重复的值,所以只添加了三个。1个主节点,多个从节点,主节点负责写操作并把数据同步到相应的从节点,从节点负责查操作。如何选举:1.这些从节点哪个比较稳定,2.根据哨兵的投票数量,达到一半的票数,所以哨兵的票数要为奇数。

2023-08-29 20:57:03 27 1

原创 Redis

nosql (not only sql): 不仅仅是sql. 它是对所有非关系型数据库的一种统称。redis: ----java开发mongodb: ----前端hbase: ----大数据Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

2023-08-28 19:39:18 23

原创 Linux(第二章)

现在把刚刚的文件的第三组权限只留一个r,其他的不改变,使用数字修改权限格式是这样,列如该文件的第一组权限有r和w,r对应4w对应2,4+2=6,所以第一个数字是6,第二组只有r,所以第二个数字是4,把第三组只留一个r,所以第三个数字也是4。IPPADDR=你的ip地址,在VMware上,点击虚拟网络编辑器,选择VMnet8,DHCP设置,查看你的ip范围,列如起始地址为192.168.100.125 结束地址为192.168.100.254,将最后改为125-254区间的数值即可。

2023-08-23 20:35:52 22

原创 Linux操作系统

Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。Linux理解为一款操作系统和我们现在使用的window操作系统类型。

2023-08-22 19:42:54 63 1

原创 SpringBoot(基础篇)

原理: 主启动类上的@SpringBootApplication注解上,而该注解是一个复合组件,而在复合注解中存在@EnableAutoConfiguration, 这个@EnableAutoConfiguration注解也是一个复合注解,包含@Import---而@Import注解导入一个AutoConfigurationImportSelector 【自动配置选择器】,在该类中存在一个方法getAutoConfigurationEntry --作用:得到自动配置类的实体。创建dao层接口及方法。

2023-08-18 19:53:29 19 1

原创 SpringBoot(入门篇)

SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。在主启动类里,通过@ComponentScan()注解在括号内传入basePackages = { },花括号内传入包的全路径并用引号包裹,但该方法会覆盖原本的默认扫描路径。

2023-08-17 19:37:41 19 1

原创 Spring-AOP

AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。2.AOP的应用场景1.记录日志 2.权限校验 3.spring事务管理。

2023-08-16 20:45:03 28

原创 Java高级-线程池

两个线程类,第一个调用了A锁,第二个调用了B锁,此时,第一个线程执行完任务等待B锁的释放,但是第二个线程也执行完任务在等待A锁的释放,两个锁就在互相等待对方释放,就会出现死锁的情况。一下是三种创建方式的代码。三种方式各有优点,第一种更方便的创建以及启动,但是继承只能继承一个类,第二章,使用实现的方式,可以继承其他类,也可以继续实现其他接口,第三种是在第二种的方式上添加了返回值。两种测试的方式,都可以得到结果,但相同第二种会比第一种简单一些,第一种使用的是线程来执行,第二种使用线程池中的对象来执行。

2023-08-15 20:06:43 53 1

原创 Java高级-线程

线程是计算机中的一种执行单元,它是操作系统中最小的可调度单位。线程包含在进程中,一个进程可以包含多个线程。线程是非原子性的,线程会同时进行。

2023-08-14 20:16:40 42

RabbitMQ安装包

RabbitMQ安装包

2023-09-04

apache-tomcat-8.5.92.tar.gz

apache-tomcat-8.5.92.tar.gz

2023-08-23

空空如也

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

TA关注的人

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