- 博客(30)
- 收藏
- 关注
原创 msgbroker
目录基本介绍消息发送订阅的原理事务型消息接收与投递流程事务型消息回查流程基本特性订阅者持久性、非持久性说明基本介绍msgbroker(消息中心)是一个常用到消息代理组件、消息中间件,主要用于分布式系统和组件之间的消息通讯,具有可靠、异步、事务等特性的消息通信服务。好处:降低系统之间的耦合度,提高系统的吞吐量,扩展性和高可用性。分为五部分:消息代理组件(MsgBroker):负责接收发布者的消息,并把消息投递到一种或者多种订阅者。注册中心(ConfigServer):负责发布者和订阅者可以找到消息中
2021-11-23 14:53:31 1391
原创 springCloud模块
约定>配置>编码1.创建module,创建完成之后父工程改变添加了:<modules> <module>子工程名字</module></modules>子工程继承了父工程:<parent> <artifactId>父工程名字</artifactId> <groupId>com.atguigu.springcloud</groupId>
2021-05-12 18:56:52 230
原创 微服务知识点
分布式为服务架构的一站式解决方案,多种技术的集合体,微服务全家桶Springboot2.x版本 SpringCloud H版本SpringCloud Alibaba服务的注册与发现服务调用服务熔断负载均衡服务降级服务的消息队列0配置中心管理服务网关服务监控全链路追踪服务定时任务调度操作...
2021-04-22 10:54:18 224 1
原创 Spring面试题(java)
1.什么是Spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。2.Spring包含的模块主要有什么?Spring Context:提供框架式的Bean访问方式,以及企业级功能(JNDI、定时任务等);Spring Core:核心类库,所有功能都依赖于该类库,提供IOC和DI服务;Spring A
2021-01-20 14:53:35 110
原创 每日10题(java)
1.匿名内部类是否可以 extends(继承)其它类,是否可以 implements(实现)interface(接口)?匿名的内部类是没有名字的内部类。不能 extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现2.GC是什么?GC 是垃圾收集。内存处理是编程容易出现的问题,忘记或错误的内存回收会导致程序、系统不稳定甚至崩溃, GC 功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的。3.什么是迭代器(Iterator)?Iterator 接口提供了很多对集合
2021-01-18 14:27:29 99
原创 抽象工厂
抽象工厂模式提供了一个创建一系列相关或者相互依赖对象的接口,不需指定它们具体的类抽象工厂模式是工厂方法模式的进一步延伸,由于它提供了功能更为强大的工厂类并且具备较好的可扩展性抽象产品角色:它是具体产品继承的父类或者是实现的接口。在java中一般有抽象类或者接口来实现。public abstract class ProductA { // 每个产品相同方法,不同实现 public abstract void test();}public abstract class Product
2021-01-15 14:57:20 87
原创 工厂方法
工厂方法又叫工厂模式、多态工厂模式和虚拟构造器模式,通过定义工厂父类负责定义创建对象的公共接口,而子类则负责生成具体的对象。将类的实例化(具体产品的创建)延迟到工厂类的子类(具体工厂)中完成,即由子类来决定应该实例化(创建)哪一个类。工厂模式可以说是简单工厂模式的进一步抽象和拓展,在保留了简单工厂的封装优点的同时,让扩展变得简单,让继承变得可行,增加了多态性的体现。抽象产品角色:它是具体产品继承的父类或者是实现的接口。在java中一般有抽象类或者接口来实现。public interface Pro
2021-01-13 11:34:19 108
原创 简单工厂
简单工厂不是一个标准的设计模式,因为常用并且简单,所以放到设计模式中。简单工厂:把实例化的操作单独放到一个类中把客户类和具体子类的实现解耦,客户类不再需要知道有哪些子类和应该实现哪个子类。客户类一般有很多个,如果不使用简单工厂,那么所有的客户类都要知道所有子类的细节。一旦增加子类或者发生改变,那么所有的客户类都要进行修改。...
2021-01-12 14:07:43 164
原创 单例
打卡第五天,星期五了 !!!来个设计模式吧!!什么是单例?单例模式属于创建型模式,它提供了一种创建对象的最佳方式。单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。...
2021-01-11 15:10:43 133
原创 每日10题(java)
打卡第四天!!!1.构造器可以被重写或者重载吗?不能重写-----一个类的构造器不能被继承可以重载-----一个类里面可以有很多个构造器2.java的元注解有哪些jdk1.5@Target:指定注解使用的范围(类,方法,字段等)@Documented:指定被标注的注解会包含在javadoc中@Retention:指定注解的声明周期(源码,class文件,运行时)@Inherited:指定子类可以继承父类的注解,只能是类上的注解,方法和字段上的注解不能被继承jdk1.8@Native:指
2021-01-07 15:16:49 138
原创 每日10题(java)
打卡第三天!!!来一篇关于线程的吧!!!1.什么是线程?线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。周期:新建 就绪 运行 阻塞 死亡2.线程与进程的区别?一个程序至少有一个进程,一个进程至少有一个线程.线程的划分尺度小于进程,可以看成是进程的一部分。进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。每个独立的进程
2021-01-06 16:07:37 162
原创 每日10题(java)
一起来学习呀!!!有什么不完整的或者错误的请多多指教!1.float n = 1.8 对吗?不对1.8是双精度数,将双精度型(double)赋值给浮点型(float)属于向下转型,会造成精度损失,需要强制类型转换float 1.8 = 1.8F; 或者 float 1.8 = (float)1.8;2.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?不一定!hash表本身是一种散列表,而在散列表中,hashCode()相等即两个键值对的哈希值相等;然而哈希值
2021-01-05 15:47:23 469
原创 每日10题(java)
我们一起来学习啊 !!!1.面向对象的基本特征封装:将数据和操作数据的方法绑定起来,外界对数据的访问只能通过已定义的接口;继承:从父类得到继承信息创建子类的过程;多态:允许不同的对象对同一消息(发送消息即函数调用)作出不同的响应。编译时的多态(静态多态、方法的重写)和运行时的多态(动态多态、方法的重载)2.运算优先级大多运算都是从左到右,只有单目运算 条件运算 赋值运算是从右到左单目运算:! ~ ++ –条件运算:表达式1?表达式2:表达式3赋值运算:=指针最优,单目运算优于
2021-01-04 17:27:21 275 1
原创 redis的特点
Redis的特点读写性能优异数据类型丰富持久化单线程数据自动过期发布订阅分布式读写性能优异缓存是Redis最常见的应用场景,主要是因为Redis读写性能优异。,Redis内部是支持事务的,在使用时候能有效保证数据的一致性。作为缓存使用时,一般有两种方式保存数据:方案一:读取前,先去读Redis,如果没有数据,读取数据库,将数据拉入Redis。(适用于对于数据实时性要求不是特...
2020-12-03 15:25:42 400
原创 Jsp和Servlet
jsp的概念简单理解:在html页面嵌套java代码作用:展示动态信息JSP技术所开发的Web应用程序是基于Java的,本质上就是一个Servlet组成:html+java代码+jps特有内容jsp页面是所有的html代码都以响应流的形式返回给浏览器(出现在应体中)jsp的执行流程1.Servet概念:定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容。Servlet引擎作为Web服务器的扩展,提供支持Servlet的功能。Servlet与客户端通过Ser
2020-06-22 15:27:30 255 2
原创 Docker
Docker主机:安装了docker程序的机器(可直接安装在操作系统上)Docker客户端:链接docker主机进行操作Docker仓库:用来保存各种软件的镜像Docker镜像:软件打包好的镜像,放在docker仓库中Docker容器:镜像启动后的的实例称为一个容器,独立运行的一组或者一个1.检查内核版本:uname -r 必须3.10以上2.安装docker : brew cask install docker...
2020-06-02 09:53:47 237
原创 sql语句
二.sql1.多表查询 | 隐式内连接:看不到 JOIN 关键字,条件使用 WHERE 指定 (SELECT 字段名 FROM 左表, 右表 WHERE 条件;)内连接 --- | 显示内连接:使用 INNER JOIN ... ON 语句, 可以省略 INNER (SELECT 字段名 FROM 左表 INNER JOIN 右表 ON 条件;) ...
2020-04-20 17:34:11 165
原创 sql(三范式、事务安全、事务的四大特性)
一.表的设计1.外键约束一张表中的某个字段引用另一个表的主键主表: 约束别人副表/从表: 使用别人的数据,被别人约束2. 三范式设计数据库表的规则,好的数据库设计对数据的存储性能和后期的程序开发,都会产生重要的影响。目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。满...
2020-04-16 17:37:54 712
原创 IO流
一. IO1.1 io分类1.按照流的流向分,可以分为输入流和输出流;2.按照操作单元划分,可以划分为字节流和字符流;3.按照流的角色划分为节点流和处理流。所有的输入流的基类:InputStream(字节) Reader(字符)所有输出流的基类:OutputStream(字节) Writer(字符)1.2 BIO,NIO,AIO 有什么区别?同步阻塞的BIO同步非...
2020-04-15 10:48:57 109
原创 线程
一. 多线程1.1 并发与并行并行:指两个或多个事件在同一时刻发生(同时发生)。并发:指两个或多个事件在同一个时间段内发生。1.2 进程1.一个内存中运行的应用程序2.有一个数据存放空间(堆空间和栈空间)是独立的3.一个应用程序可以同时运行多个进程4.进程也是程序的一次执行过程,是系统运行程序的基本单位;5.系统运行一个程序即是一个进程从创建、运行到消亡的过程。1.3 线程...
2020-03-30 11:06:00 113
原创 数据结构、泛型
一. 数据结构数据结构 : 数据用什么样的方式组合在一起。1.1 常见数据结构数据存储的常用结构有:栈、队列、数组、链表和红黑树。1.1.1 栈stack,又称堆栈,它是运算受限的线性表,其限制是仅允许在标的一端进行插入和删除操作,不允许在其他任何位置进行添加、查找、删除等操作。特点:1.先进后出(即,存进去的元素,要在后它后面的元素依次取出后,才能取出该元素)。例如,子弹压进弹夹...
2020-03-25 16:22:08 356
原创 Map集合
学习之前我们首先要知道什么是映射:就比如生活中一个人对应这一个身份证号,这种一一对应的关系就叫做映射,在java中 java.util.Map接口专门用来存放这种关系的对象这里写自定义目录标题一. Map集合1.1 Map集合与Collection集合区别1.2 Map的常用子类一. Map集合1.1 Map集合与Collection集合区别Map接口与Collection接口里面下的集合...
2020-03-17 14:07:59 374
原创 Collection集合
java基础6 Collection集合一.Collection集合1.1 Collection常用功能1.2迭代器、增强for1.1.1迭代器1.1.2 增强for二. 集合常用类的继承体系2.1 List接口一.Collection集合集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组的区别:数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元...
2020-03-13 16:46:35 378
原创 Mac 下终端命令无法使用
mac 终端命令失效 只有cd可以使用,解决方案1.打开终端export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin2.执行后输入 cd ~3.打开并编辑bash_profile 执行命令:open .bash_profile4.这会显示你配置的路径,可以先保留一份 再全部删除并编辑,编辑后command+s进行保存ex...
2020-03-13 10:18:28 1577
原创 Mac 配置maven的环境变量
1.下载maven后减压 不多说2.将减压后的maven拉倒终端,此时进入目录3.在终端输入 vim ~/.bash_profile4.按 i 进入编辑5.输入以下命令 MAVEN_HOME=/Users/jxl/apache-maven-3.6.1 (这里是自己的maven路径) PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH: expo...
2020-03-13 10:07:05 243
原创 数据类型、运算符、流程控制语句
一. 计算机基础知识1.1 二进制十进制数据转成二进制数据:使用除以2获取余数的方式二进制数据转成十进制数据:使用8421编码的方式 二进制:1010 这个二进制每位的数字,从右向左: 二进制: 1 0 1 0 -------------------------------------- ...
2020-03-06 16:39:08 246
原创 Object类、String类、包装类、抽象类、接口
一. String类1.1. 特点字符串不变:字符串的值在创建后不能被更改。String s1 = "abc"; s1 += "d"; System.out.println(s1); // "abcd" // 内存中有"abc","abcd"两个对象,s1从指向"abc",改变指向,指向了"abcd"。因为String对象是不可变的,所以它们可以被共享。String s1...
2020-03-06 16:30:40 170
原创 static、super与this、final
一.static用来修饰的成员变量和成员方法 被修饰的成员是属于类,而不是单单是属 于某个对象的。 既然属于类,就可以不靠创建对象来调用了1.1 定义和使用1.1.1.类变量修饰的成员变量static 数据类型 变量名;public class Student { private String name; private int age; // 学生的id private...
2020-03-05 11:49:51 115
原创 方法、封装、继承、多态
一. 方法1.1 方法的定义和调用:1).方法内部实现功能时,是否需要外部数据(来决定是否需要参数);2).方法内部实现功能后,是否有运行结果(来决定是否需要返回值);public static void main(String[] args) { int sum = getSum(7, 6);//7和6叫“实参” System.out.println(s...
2020-03-04 17:04:41 359
原创 数组、ArrayList
一. 数组数组概念: 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。1.1 数组的定义1.1.1 指定长度数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];eg: int[] arr = new int[3];// 数组有定长特性,长度一旦指定,不可更改。1.1.2 指定元素数据类型[] 数组名 = new 数据类型[]{元素1,元素2...
2020-03-04 15:01:21 183
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人