- 博客(318)
- 资源 (86)
- 问答 (47)
- 收藏
- 关注

原创 Go中赋值、转换、反射创建对象、调用方法
但是,Go使用interface实现的功能叫组合,Go是使用组合来实现的继承,说的更精确一点,是使用组合来代替的继承;在java中反射是可以获取继承关系,而go语言实际是不支持继承的,所以必须是相同的类型才能使用AssignableTo(),ConvertibleTo()简单来讲跟结构体的嵌套差不多,只不过这次是实现接口,从代码的实际应用来讲,实现接口是为了实现特定的目的,这个跟java中接口的实现的作用是差不多的功能;简单来看这种继承的方式实际就是结构体的嵌套(刚开始学,不知道这样理解是否正确)
2022-11-27 11:38:32
174

原创 Go中的泛型和反射以及序列化
我们接触过java的同学都会知道,java中的反射是怎么一回事---->>在运行期间去获得对象的类型信息以及其他一些信息;
2022-11-19 20:54:37
279

原创 Go的接口,闭包,异常捕获
errorCode string errorResult string } // 结构体实现Error接口 func(d DivideByZeroError) Error() string {errorCode : "error" , errorResult : "divide by zero" , } return - 1 , byZeroError //返回 float64 与error(这里有点问题,结果为-1时 } return a / b , nil } func main() {err!
2022-09-04 21:34:49
132

原创 Go中的函数
Go中的函数给我的感觉就是C中的函数,js中的函数,但是Go中的函数又有些不一样;首先回顾一下java中方法中的参数,有的是传的指针,有的是传是值的拷贝;因为切片的内部结构是 指针(引用),len 和cap。我们也可以在声明返回值的类型时将返回值声明好。不要好奇,因为他扩容了呗。这样做跟下面的区别----显而易见。举个例子就是 传的是切片。...
2022-08-29 21:30:41
111

原创 Go中的逻辑处理(if,switch),for循环,goto
在switch type 语句中case字句不能使用fallthrough。if可以嵌套,但是如果是多个判断条件,那么可以使用switch。switch -case-default 这个跟java类似;在if中声明的局部变量只是作用在if这个判断逻辑里,if句子中云粗包含一个分号常见的if语句的形式。上面的案例看到switch是不支持穿透的,这里提示要求是左侧应该是接口类型的数据类型。接口之后再去深入学习,先简单了解下—1,逻辑表达式中可以有变量或者常量。......
2022-08-21 22:37:56
178

原创 Apache-Solr的部署与使用
~在海量数据下,对MySQL或Oracle进行模糊查询或条件查询的效率是很低的;~> Solr 是一个独立的企业搜索服务器,具有类似 REST 的 API。 你把 通过 JSON、XML、CSV 或 HTTP 上的二进制文件(称为“索引”)。 您通过 HTTP GET 查询它并接收 JSON、XML、CSV 或二进制结果。常见的搜索解决方案~>基于Apache Lucene(全文检索工具库)实现搜索>基于谷歌API实现搜索和基于百度API实现搜索;Solr 在使用 Lucene 搜索库并对
2022-03-05 22:51:06
233

原创 单体架构分布式架构~RPC
RPC为什么要学习RPC?单体架构分布式架构RPCRPC与HTTPRPC的实现RMI实现RPC为什么要学习RPC?这就要讲项目架构的历史渊源了,在以前互联网不发达的时候,数据访问的并发量不大,这时候的项目大多数是以单体架构为主;什么是单体架构?单体架构一个项目里面的全部代码实现全部的业务功能;画图便于理解,这里以jd.com为例当我们要访问业务时,这些业务实现的代码都打包在一个项目包里,这样的做法有优点,也有缺点;优点:1,部署简单----部署一个项目代码2,成本低----只需要一
2022-02-14 16:59:53
283

原创 【manjaro的安装后的配置】解决输入法安装与声卡配置
manjorod的安装与配置欢迎各位采坑manjoro安装输入法前的准备-----》》欢迎各位采坑manjoro你好! 这是我第二次安装manjoro了如果不算虚拟机安装的话,基本的安装步骤1,拷贝到镜像到 U盘上2,重启系统,然后U盘启动3,自己选择一些配置,可以将manjoro安装到一个盘符里,也可以和win共存剩下的基本就是一路默认—基本也不用选择,等待系统安装完毕安装完毕后发现系统米有中文输入法,别着急,可以自己安装,毕竟manoro是一个高度定制化的系统;安装输入法前的准备-
2021-12-16 13:33:48
2390
10
原创 大数据呀大数据
我上大学时那时候安卓的版本才到安卓4.4,在智能手机出来普及以前,各大网站的数据量并没有那么多,但是随着智能手机的普及,互联网巨头家里的数据呈现几何级增长,像什么微博,微信,视频网站的数据;需要找到合适的存储方式—>>分布式存储架构,可以水平扩展,实现存储数据类型多样化,二维可以实现高容错高吞吐量,轻松实现大文件存储(支持P级别的数据存储)我自己的一些经历–>>在做代码开发之前,一直觉得大数据这件事是高大上的一门学问,门槛很高,而且我上大学的时候这个词才刚刚在众多互联网记住中展露头角;
2022-12-16 22:12:19
1560
原创 微服务的声明式调用
声明带有该接口的REST客户端应该是创建(例如自动装配到另一个组件)。如果SC LoadBalancer可用它将被用来负载平衡后端请求,负载均衡器可以使用与虚拟客户端相同的名称(即值)配置。因为服务注册到注册中心需要一定的时间,一般是4s左右,这个可以自己设置;如果是刚启动项目就去请求,大概率会得到下面的页面;具体的代码见前面的项目搭建,这里也放上。然后在这个微服务中调用别的微服务。
2022-10-22 21:34:36
68
原创 Hystrix熔断器
传递参数有2中方法,一种是传入多个参数值,会按顺序填充到url后面的参数占位符中,一种是采用map传入多个参数,这时一定要使用HashMap。一个简单的场景就是 家里的保险丝,当电流过大时保险丝熔断,是的家里的其他电器不至于造成大规模的损坏;另一个当一个微服务中有很多请求时,会导致他调用其他微服务的时候(正常的服务线程)造成积压,产生雪崩;我们可以针对不同的微服务有选择的开启熔断,即需要在那个微服务里开启熔断,就在以来中引入相应的依赖。发现这个注解被废弃了,但是在最新的版本中没有别的注解可用,
2022-10-15 21:33:30
301
原创 微服务呀微服务
说实话,spring虽然方便我们的代码开发,但是微服务这块 版本不兼容,这个版本移除了某个类,然后运行时就报错了,其实在我们开发中我们对于整体服务的把控,在不断实践中去调整服务的粒度,这才是微服务架构想要达到的一个理想状态;在进行微服务的设计时还要考虑各个服务之间是如何交互的,现阶段主流的远程交互–细粒度的微服务架构可以帮助他们更快地交付软件 在微服务架构中,各个服务的。所以我们在调用微服务时,通过向注册中心寻找名字的方式来寻找我们需要的服务;2)错误请求,并且服务识别出了它是错误的,但什么也没做;
2022-10-08 20:54:29
212
原创 来点TypeScript
这里可以发现断言之后的数据类型并没有转换成number类型, 是因为转换通常意味着某种运行时的支持,java中可以通过。有版本号,文件名,来源 映射关系—>>这映射关系四个字母一组,具体映射关系暂不去管他了。简单来说 使用var 声明的变量 相当于全局的变量,在代码块中修改 该变量会影响该值。类型断言可以用来手动指定一个值得类型,即允许变量从一种类型更改为另一种类型,3,结束符分号是可选的,(如果语句写在一行上,是需要分隔符的)1,typejs会忽略程序中的空格,制表符,换行符。
2022-09-24 20:45:00
406
原创 分布式文件系统[MinIO]YYDS
先百度一下什么是MinIO:Minio 是个基于Golang 编写的开源对象存储套件,基于Apache License v2.0开源协议,虽然轻量,却拥有着不错的性能。它兼容亚马逊S3云存储服务接口。可以很简单的和其他应用结合使用,例如 NodeJS、Redis、MySQL等。
2022-09-11 22:52:07
237
原创 研究一下延时队列(Java 与Go
DelayQueue即延迟队列,也就是一个按延迟时间从小到大出队的PriorityQueue。所谓延迟时间,就是“未来将要执行的时间”-“当前时间”。为此,放入DelayQueue中的元素,必须;(1)如果getDelay的返回值小于或等于0,则说明该元素到期,需要从队列中拿出来执行。(2)该接口首先继承了Comparable 接口,所以要实现该接口,必须实现Comparable 接口。具体来说,就是基于getDelay()的返回值比较两个元素的大小。直接上代码—>>
2022-08-31 21:38:05
58
原创 Go中的管道,结构体
的通讯方式,是不支持跨进程通信的,如果需要进程间通讯的话,可以使用Socket等网络方式。这是因为目前只有一个线程去管道里读取数据,多了的没办法拿走,此时会产生一个死锁出来;如果管道中没有数据,那么从管道中读取数据会导致程序阻塞,直到有数据–管道是Go语言在语言级别上提供的goroutine间的。go中的结构体是面向对象编程的一个关键点;1,使用range的方式,需要先关闭管道。管道一旦关闭,就不能再往里面添加数据了。管道底层是一个环形队列(先进先出);在运行阶段,go会直接抛一个异常。......
2022-08-16 22:00:57
261
原创 Go基本数据类型
type signal uint8 //定义一个信号量 type mmap map [ string ] string //定义一个map type add func(a , b int) int //定义函数 type man struct {//定义结构体 name string age int } type comp complex64每一种自定义类类型都可以有自己的方法,当我们给自定义类型赋值时(有的需要初始化),可以调用相应的方法;......
2022-08-11 21:59:17
1124
原创 Go常用命令与基础语法
先来看看go的命令有哪些: 命令: 会打开一个网址,来反馈bug,go build 命令:会将.go文件打包,打包后的是精简的代码,只包含用到的代码,对于没用到的不会被打包; 移除打包好的文件 查看go环境设置 : 格式化包下所有的代码格式将go文件加入gopath下的bin包中以便可以直接访问;这里gopath 是自己指定的,也可以是默认的,这要看自己的设置了;系统设置的得gopath环境变量 : 对当前包添加依赖并安装这些依赖 对静态代码做检查 查看包下的帮助文档(注释)g
2022-08-06 21:59:20
212
原创 GO[一起来学习Go吧]
当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的。标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected。开始转Go了,虽然java依旧很Nice,但是只掌握一门语言是不太好的,有时间学习一下GO。安装结束后会再去配置go的默认工程存放路径,习惯将工程放到非系统盘;......
2022-08-02 21:45:41
72
原创 swagger2.9.2教程 与swagger3.0.0教程
如果是使用swagger3.0版本那么可以使用spring提供的swagger3的启动包,方便快捷,同时也可以配合使用最新版本的springboot版本,我想着反正最后都要升级成swagger3.0.0,不如就直接肝swagger3.0.0,注意这里要使用springboot的2.5及以下版本,----但是这涉及到漏洞的问题,所以最好还是使用2.7.1(最新版本)然后启动工程---->>http//localhost8888/swagger-ui/index.html。...
2022-07-24 11:24:22
664
原创 Docker数据卷及[Tomcat,MySQL,Redis]的部署
docker数据卷是什么?我们通过docker可以启动多个容器,但是当我们的容器被删除后,我们在容器中的数据也一并丢失了;这就迫使我们考虑docker数据的持久化技术—数据卷来解决这个问题;数据卷---->>docker 容器产生的数据 如果不通过 docker commit 来打包生成新的镜像,那么当容器删除后,数据也自然就没有了,为了能保存数据在docker中,我们使用数据卷;这有些类似于redis中的 *.rdb和 *.aof 两种持久化文件,新的docker可以读取两种文件来完成数据的导入;
2022-07-08 22:50:26
1298
原创 Docker 镜像刨析
镜像是一种轻量级的可执行的独立的软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行软件所需要的所有内容,包括代码,运行时库,环境变量和配置文件;举个例子:我们要安装tomcat 大约11M去官网下载tomcat我们在docker上下载的tomcat镜像—483M这是因为tomcat运行所需要jdk环境,所以在下载镜像时会将tomcat所需要的依赖(运行是库等)一起打包下载下来;tomcat镜像是由三层结构构成的;各个镜像之间可以共用某些资源;比如centos的一些镜像下载第二
2022-07-02 18:10:03
236
1
原创 Docker入门
Docker的运行逻辑:Docker 和传统虚拟化方式的不同之处:Docker 是一个开源的、轻量级的容器引擎,主要运行于 Linux 和 Windows,用于创建、管理和编排容器。和 VMware 虚拟机相比,Docker 使用容器承载应用程序,而不使用操作系统,所以它的开销很少,性能很高。但是,Docker 对应用程序的隔离不如虚拟机彻底,所以它并不能完全取代 VMware。Docker的好处:一次构建,随处运行Docker跟vmware虚拟机一样都是运行于Linux 和 Windows 上的软件,
2022-06-27 22:18:04
355
原创 Java高并发包里atomic包
java并发包里实用程序类在并发编程中通常很有用。此包包括一些小型的标准化可扩展框架,以及一些提供有用功能但其他方面繁琐或难以实现的类。原子包下提供了原子操作类------该包下主要提供了(boolean,int,long以及引用类型的的Reference)提供了其包装类的的原子操作类---- 对于数组有对应的原子操作类 对于类中 字段的原子操作类 对于数据更加精准控制的 对于累加操作atomic包下的类代码敬上—》》分析—>>两个线程,其中一个线程通过whi
2022-06-19 22:14:10
100
原创 MySQL到底怎么优化?
Mysql的优化Mysql的优化在数据库级别进行优化---->硬件级别的优化---->>Mysql优化细节优化select语句Mysql的优化数据库的性能取决于数据库级别的多个因素,比如表的设计、查询语句和数据库配置设置。这些软件结构导致硬件级别的 CPU 和 I/O 操作,必须减少CPU 和IO的使用才可以尽可能提高效率;在数据库级别进行优化---->1,考虑表结构是否合理?2,是否设置了正确的索引?3,每个表的存储引擎是否使用得当?(特别是,选择事务性存储引擎(如)或
2022-06-12 21:54:42
309
1
原创 记录一下我的刷题实录
开始—>>1,主要是 map.merge(m, n, Integer::sum)方法指定的 key 是否存在,如果不存在,则添加键值对到 hashMap 中。如果 key 对应的 value 不存在,则返回该 value 值,如果存在,则返回通过 remappingFunction 重新计算后的值。发一个他人写的另一个解法---->>但总感觉怪怪的解题思路就是:两个数最新小公倍数,他的范围在较大那个数到两数之乘积那个数之间,然后通过循环开始找呗;如果
2022-06-09 14:36:25
59
原创 用着用着就过时了~WebSecurityConfigurerAdapter
今天在写Spring(最新版本)框架,控制前端登录,配置类在继承WebSecurityConfigurerAdapter时,报告说过时了,几个月前好用的好好的,说过时就过时了!技术变化还真是快!既然过时了,那以后该怎么写呢?对于普通小白程序员虽然我们无法写出那些大佬底层的代码,咱也得确保咱会用不是!于是乎,网上查API,写代码-变化就是不需要继承WebSecurityConfigurerAdapter,而是注入一个过滤链的Bean,通过这个过滤链去处理用户登录的请求;该过滤链返回值为–SecurityFi
2022-06-06 16:54:55
6935
原创 Tomcat的优化
Tomcat的优化Tomcat 内存优化Tomcat并发优化面试被问到了Tomcat的优化,咋整,我们没准备,就瞎扯了亿点点;关于优化的问题,始终是面试一项必问的问题,然而我没想到的是竟然问的是tomcat优化…就是这只猫 …先来整理一下吧!Tomcat 内存优化由于tomcat使用java写的,所以我们像配置jvm那样去配置一下tomcat的参数;在 tomcat 的启动脚本 catalina.bat中设置一些参数JAVA_OPTS参数说明 -server 启用jdk 的 .
2022-05-28 20:57:17
52
原创 JAVA中的锁[研究小结]
JAVA中的锁什么是java中的锁?自旋锁自旋锁的开启Synchronized锁偏向锁jvm开启/关闭偏向锁轻量级锁轻量级锁的释放synchronized的执行过程总结锁优化锁细化锁粗化缓存行的伪共享看了那么多关于锁的文章,对于java中的锁还是单独整理一下吧,以便后来复习用;另一个整理一遍加深理解与印象吧!本文章仅供粉丝参考,如有不当之处还请指出,以作改正什么是java中的锁?一个不太那啥的例子:java中的锁就像是一个看厕所的大爷,有人进去方便了,他就把门上锁了,即别的人就不能进去.
2022-05-27 13:22:09
62
原创 探索解决 Win 10 应用商店重置后打不开了的问题;
事情经过是这个样子的,本来要在win10应用商店下载软件的,结果下载下来了,但是总是提示安装失败;于是上网找寻解决方案----用了网上的解决一个方案----->>在应用和功能中找到microsoft store 然后重置;结果就悲剧了,重置之后应用商店打不开了;于是我就去这个位置找C:\Program Files\WindowsApps 结果就是找不到store了;没办法,重装系统成本太大,于是乎安装了一个虚拟机,打算把虚拟机中的文件复制到主机上看看效果如何;这么多文件,一开始我
2022-05-24 13:43:47
169
原创 浅析OutofMemoryError与StackOverFlowError
编译时异常 checked Exception即编译期间就可以发现可能存在异常的情况比如IOException,ClassNotFoundException等
2022-05-15 21:31:42
79
原创 面试题[51-100]
51.如何跳出多重循环// break,内层循环想要跳出外层循环 int i=0; int j=0; a: for(;i<10;i++){ b:for(;j<10;j++){ if(j==4){ break a; //跳出a所在的循环 }52.使用spring的好处?//能够实现依赖注入和控制反转;//由Spring自动管理bean的生命周
2022-05-12 23:45:22
92
原创 面试题[1-50]
java三大特性;//继承,封装.多态线程和进程的区别;//进程可以包含多个线程,线程共享本进程的地址空间,进程之间是独立的地址空间;ajax的优缺点;//异步请求机制,使得页面不用刷新即可完成动态交互,减少了冗余的请求,减轻服务器的压力缺点—暴露了与服务器的交互细节,浏览器的机制被破坏----后退和历史记录功能被打破;read方法为什么返回int类型;//读取的字节数据,hashmap和hashtable的区别//hashmap 底层是 数组 +链表+红黑树 允许一.
2022-05-12 00:13:18
76
原创 MicroService详细刨析
微服务框架大体画了下,框架还有好多没有用上,后续会从项目开始;每一个模块之间都有千丝万缕的联系,当一个模块扛不住并发时,常用的解决方案~~~1,拆分模块2,加集群,设置负载均衡微服务划分方法不同,拆分为围绕业务功能组织的服务。此类服务采用该业务区域的广泛软件实现,包括用户界面、持久存储和任何外部协作。因此,团队是跨职能的,包括开发所需的全部技能:用户体验,数据库和项目管理。微服务的特性:1,独立运行在自己的进程中—每个服务都是一个server(基本上);2,一系列服务共同构建起一
2022-05-01 11:53:37
79
原创 以身犯险~CSRF跨站请求伪造
CSRF~跨站请求伪造什么是跨站伪造请求呢?在我们日常访问网站时,有时候是跨域的,如果没有安全机制做保证,这很容易造成信息的泄露;比如按照上面这个例子~跨域请求的安全机制是关闭的;现在我们将其开启之后新建一个简单的web项目,端口为8081伪造的前端登录页,提交的地址是8080服务器的<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title&.
2022-04-30 16:54:06
125
原创 面试题[第一部分]
1,浅拷贝与深拷贝实例代码~~@Data@AllArgsConstructor@NoArgsConstructorpublic class Person implements Cloneable, Serializable { private String name; private int age; private static final long serialVersionUID = -100L; @Override protected Obj
2022-04-30 10:37:54
481
原创 深入学习Redis底层----实际应用(二)
RedisRedis特点Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。Redis 优势性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。丰富的数据类型 – R
2022-04-29 15:28:20
80
原创 openresty安装与入门
OpenResty简介:OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。openresty安装:官方下载根据自己的系统选择合适的版本,这里用的是源码 linux为fedora35下载源码—wget https://openresty.org/download/openresty-1.19.9.1.tar.gz
2022-04-22 00:13:14
2301
微服务的RestTemplate调用和声明式调用
2022-10-22
bridge-utils1.7.1网桥工具教程[内含软件包].zip
2022-07-10
大数据同步代码框架实现源码
2022-04-01
SpringSecurity function ModifyAuthroties RemebeMe
2022-03-28
快速搭建网站的工具,快速:体积小,加载速度快 开源:开放源代码,高水平,高品质
2022-02-28
这里的内存效果指的什么
2022-06-18
mysql的优化,官方的翻译如下,热心人给解答一下
2022-06-12
java作用域中在套一个作用域,属性重名就不行,为什么C语言就可以?
2022-05-02
下面这断代码结果是什么?
2022-04-24
想不通的一个问题~权限与角色springsecurity
2022-03-25
solr导入数据库数据总是查询到0条数据
2022-03-07
git bash here出现下面这种情况
2022-02-18
解答一下这个该怎么遍历?freemarker
2022-01-19
为什么1.2.3就正常,1.2.9就异常?
2022-01-17
ajax中的data该怎们写
2021-12-21
http 500错误,怎么解决?
2021-12-09
关于Junit4和junit5测试环境整合
2021-11-27
微软自带浏览器太占内存了,怎么解决?
2021-11-21
为什么maven中父工程的<scope>import</scope>不起作用?
2021-11-18
为什么连接远程库会这么慢?
2021-11-16
java中的flatmap方法怎么使用?
2021-11-11
来人呀,看YM source看到这里不太理解这是什么意思
2021-10-25
ThreadLocal在现实业务中有什么应用场景?
2021-10-15
下面这些是什么意思呀?给讲一下吧;
2021-10-09
这段代码有什么问题吗?
2021-10-08
这个代码的运行结果有人给解释一下吗?最好是带图的那种;
2021-10-08
百度API该怎么调用呢?
2021-10-07
shutdownNow方法该怎么用呢?等一个有缘人解答
2021-10-05
求解答一下LockSupport中park和unpark方法
2021-10-03
为什么会这个样子?需要帮助,急
2021-10-03
servlet入门问题,还请解答一下
2021-09-29
怎样设置框架随着浏览器窗口大小进行变化呀?
2021-09-27
Servlet发送给浏览器的中文时出现中文乱码"?"怎么解决?
2021-09-27
为什么会出现这么一块蓝色的部分?是哪里的问题?
2021-09-27
为什么相同的网页在火狐中打开是预想的模样,在edge中就不是呢?
2021-09-27
如何理解 "GET在浏览器回退时是无害的,而POST会再次提交请求。"中的无害??
2021-09-26
这是什么?微软彩蛋吗?还是tomcat出现了什么问题?
2021-09-25
为什么鼠标滚轮和鼠标悬停事件识别不到,是因为是div吗?
2021-09-24
怎么用js调用方法播放音乐?
2021-09-24
搞不懂呀,js的原型中这个是啥意思?
2021-09-24
有一个疑惑需要确认一下!
2021-09-24
怎么使用js中的这个方法呀?
2021-09-24
javascript的小疑问,有点小疑惑,请解答;
2021-09-23
能回答一下这个问题吗?
2021-09-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人