- 博客(627)
- 问答 (2)
- 收藏
- 关注
原创 Golang-RPC
RPC(Remote Procedure Call),主要是帮助我们屏蔽,是我们更专注于业务逻辑,实现调用远程方法就像调用本地方法一样。
2023-05-25 15:28:52
139
原创 Golang-httprouter
httprouter谈不上是一个框架,它的性能非常优秀。完全可以用来代替默认的 ServeMux。所以比较适合对性能要求高,路由相对简单扁平的业务,或者作为高层HTTP框架的内部模块。httproute内部通过实现一个trie树来提高性能。核心代码就是golang标准库中 http.Handler 接口,在该函数中实现自己的请求路由分发策略。gorilla/mux也是一个第三方的路由器,但是性能一般。
2023-05-25 15:27:14
408
原创 Golang-启蒙
Go语言(或 Golang)起源于 2007 年,并在 2009 年正式对外发布。Go 是非常年轻的一门语言,它的主要目标是“兼具 Python 等动态语言的开发速度和 C/C++ 等编译型语言的性能与安全性”。Go语言是编程语言设计的又一次尝试,是对类C语言的重大改进,它不但能让你访问底层操作系统,还提供了强大的网络编程和并发编程支持。Go语言的用途众多,可以进行网络编程、系统编程、并发编程、分布式编程。
2023-05-20 16:27:02
300
原创 Java多线程-Pip管道
管道的意思,就是向一个管子一样从一端到另一端, 只支持单方向的数据传输, 需要注意的不能在同一个线程使用管道否则会导致死锁的情况,发生和接收必须在不同线程, 通过使用管道,实现不同线程间的通信,而无需借助于临时文件之类的东西。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。其分为两类:字节流和字符流,基本步骤为:线程A写入数据到输出流,线程B从输入流读取数据, ,从而实现线程通讯。
2023-05-09 15:57:28
634
原创 Java-Javassist(字节码修改)
AspectJ 扩展了 Java 语言,定义了一系列 AOP 语法,在 JVM 中运行需要使用特定的编译器生成遵守 Java 字节码规范的 Class 文件,Spring AOP 使用了 AspectJ。它在指令的层面来操作,所以使用它需要对 JVM 的指令有所了解,门槛较高,CGLIB 就使用了 ASM 技术。CtClass:代表一个 Class 的实例,可以通过类的全限定名来获取 CtClass 对象,其中包含了对 Class 的各种操作。有其他问题在评论区讨论-或者私信我-收到会在第一时间回复。
2023-04-03 16:18:20
815
原创 Java多线程-CompletableFuture(链式)
线程池这个大家都知道,是为了提高效率,可以类比生活,如果开个店,需要几个员工,正常的操作都是雇佣员工,而不是每天使用临时工,这样用完就解雇掉,对于店主来说招人的成本太高,还需要培训,我想正常的都不会这么做,线程池也是同样的道理,避免了创建和销毁线程的开销。Java中经常使用异步执行任务来提高效率,但是获取异步结果需要阻塞主线程,同时可能导致回调地狱问题(多个future对象之间存在依赖组合关系)。于是在Java 1.8中新增了CompletableFuture,让我们可以随意组合各种异步任务的结果。
2023-03-12 16:32:28
643
1
原创 Java-新年抽奖-消息自动化发送脚本
我们公司7点半开年会,然后大约8点半开始抽奖抢, 使用腾讯会议的方式进行发关键字消息然后截图方式抽奖 然而我还在地铁上,手速满的我只抽到了3等奖小米耳机一个 ,然后我回家后迫不及待第一时间赶紧使用java写一个机器人脚本,疯狂发消息一言难尽啊,腾讯会议不给力啊桌面app老是卡死,导致最后啥也没抢到,当然可能和我电脑也有一点关系......................... 现在就把脚本给大家提供出来,希望你们能抢到好的礼品
2023-01-17 22:44:58
569
1
原创 SwitchHosts-快速切换Hosts
我们在开发Web项目过程中,一般会部署有多套环境,网址域名都相同,部署在不同的服务器上,有开发环境、测试环境、预发布环境、生产环境。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。SwitchHosts是一个管理、快速切换Hosts小工具,开源软件,一键切换Hosts配置,非常实用,高效。有其他问题在评论区讨论-或者私信我-收到会在第一时间回复。
2022-12-28 14:34:43
705
原创 SpringBoot-JAP-JpaSpecificationExecutor详解
/查询指定条件的第一条数据 Optional < T > findOne(@Nullable Specification < T > spec);//查询指定条件的全部数据 List < T > findAll(@Nullable Specification < T > spec);//查询指定条件的分页数据 Page < T > findAll(@Nullable Specification < T > spec , Pageable pageable);
2022-12-28 14:22:11
2623
原创 JPA-ids for this class must be manually assigned before calling save (使用数据库的自增)
ids for this class must be manually assigned before calling save
2022-11-28 09:09:06
704
原创 Mysql-解决创建存储函数This function has none of DETERMINISTIC
解决创建存储函数This function has none of DETERMINISTIC
2022-11-28 09:03:17
447
原创 Mysql-解决Truncated incorrect DOUBLE value xxx
Mysql-解决Truncated incorrect DOUBLE value xxx
2022-11-28 08:59:16
1121
原创 JavaFx-缺少JavaFX运行时组件,需要这些组件才能运行此应用程序
JavaFx-缺少JavaFX运行时组件,需要这些组件才能运行此应用程序
2022-11-28 08:53:39
2698
原创 Java-ForkJoinPool(线程池-工作窃取算法)
Fork 就是把一个大任务切分为若干个子任务并行地执行,Join 就是合并这些子任务的执行结果,最后得到这个大任务的结果。Fork/Join 框架使用的是工作窃取算法。
2022-11-27 20:43:35
2437
原创 ElasticSearch-查询语法(结构化查询)
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MtyjbgHq-1667897263478)(https://note.youdao.com/yws/res/14689/WEBRESOURCE4139dfa9ab9fb30cc38c7ef167227684)]免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。GET 索引名称/_doc/1。
2022-11-08 16:48:17
2399
原创 ElasticSearch-查询语法(聚合查询)
Percentiles Ranks Aggregation 与 Percentiles Aggregation 统计恰恰相反,就是想看当前数值处在什么范围内(百分位), 假如你查一下当前值 500 和 600 所处的百分位,发现是 90.01 和 100,那么说明有 90.01 % 的数值都在 500 以内,100 % 的数值在 600 以内。在聚合执行的过程中,从每个文档提取出来的值都会检查每个分组的范围,并且使相关的文档落入分组中。注意,范围聚合的每个范围内包含 from 值但是排除 to 值。
2022-11-08 16:47:18
1892
1
原创 ElasticSearch-查询语法(复合查询)
indices query 中有 query 和 no_match_query 两部分,query 中用于搜索指定索引列表中的文档,no_match_query 中的查询条件用于搜索指定索引列表之外的文档。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。复合查询就是把一些简单查询组合在一起实现更复杂的查询需求,除此之外,复合查询还可以控制另外一个查询的行为。
2022-11-08 16:45:29
438
原创 ElasticSearch-查询语法(功能)
range query 即范围查询,用于匹配在某一范围内的数值型、日期类型或者字符串型字段的文档,比如搜索哪些书籍的价格在 50 到 100之间、哪些书籍的出版时间在 2015 年到 2019 年之间。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。排序条件的顺序是很重要的。结果首先按第一个条件排序,仅当结果集的第一个。你可以根据一些不同的字段进行排序,如地理距离或是脚本计算的特定值。
2022-11-08 16:44:30
202
原创 ElasticSearch-查询语法(词项查询)
prefix 查询用于查询某个字段中以给定前缀开始的文档,比如查询 title 中含有以 java 为前缀的关键词的文档,那么含有 java、javascript、javaee 等所有以 java 开头关键词的文档都会被匹配。term 查询用来查找指定字段中包含给定单词的文档,term 查询不被解析,只有查询词和文档中的词精确匹配才会被搜索到,应用场景为查询人名、地名等需要精准匹配的需求。terms 查询是 term 查询的升级,可以用来查询文档中包含多个词的文档。
2022-11-08 16:43:02
718
原创 ElasticSearch-查询语法(全文查询)
match query 用于搜索单个字段,首先会针对查询语句进行解析(经过 analyzer),主要是对查询语句进行分词,分词后查询语句的任何一个词项被匹配,文档就会被搜到,默认情况下相当于对分词后词项进行 or 匹配操作。query_string query 是与 Lucene 查询语句的语法结合非常紧密的一种查询,允许在一个查询语句中使用多个特殊条件关键字(如:AND | OR | NOT)对多个字段进行查询。比如query里面的内容是 ”搜索服务器”,那么只要分词集中包含之一就可以匹配。
2022-11-08 16:15:47
1149
原创 JavaFx-SceneBuilder(可视化拖拽)
JavaFX Scene Builder是一种可视布局工具,允许用户快速设计JavaFX应用程序用户界面,而无需编码。用户可以将UI组件拖放到工作区,修改其属性,应用样式表,并且它们正在创建的布局的FXML代码将在后台自动生成。它的结果是一个FXML文件,然后可以通过绑定到应用程序的逻辑与Java项目组合注意: Scene Builder只能快速帮你把基础的布局啥快速搭建,但是数据交互等高级操作是没法实现的,还是需要你精通JavaFx才行。
2022-11-07 18:11:58
2347
原创 MySQL-Windows安装8.0.30
依次点开“MySQL Servers”、“MySQL Server”、“MySQL Server 8.0”、“MySQL Server 8.0.30 -X64”,然后点击绿色箭头即可。按下“window+R”键弹出运行框,输入“cmd”进入window命令行,输入“mysql -u root -p”按下回车,再输入密码,按下回车,出现下面界面则是已经配置成功。无结果,说明未安装过mysql或者已经卸载mysql服务,接下来直接安装mysql即可,否则需要删除之前安装的mysql。选择安装的产品和功能。
2022-11-05 17:52:31
533
原创 JavaFx-初识
JavaFX 是一个 Java 库,用于开发桌面应用程序以及富 Internet 应用程序 (RIA)。在 JavaFX 中构建的应用程序可以在多个平台上运行,包括 Web、移动和桌面。JavaFX 旨在取代 Java 应用程序中的 swing 作为 GUI 框架。但是,它提供了比摆动更多的功能。与 Swing 一样,JavaFX 也提供自己的组件并且不依赖于操作系统。它是轻量级和硬件加速的。它支持各种操作系统,包括 Windows、Linux 和 Mac OS。
2022-11-04 16:27:04
3525
原创 Java8-接口的新增(默认方法和静态方法)
而且一个接口的实现必须实现该接口所有的抽象方法,这并不是一个可选择的行为,如果我们在一个接口中增加了新的方法就会影响到其所有的实现类,很可能有些实现类根本不需要这个功能,但是又不得不去实现该功能。允许类实现多个接口,当一个类实现多个定义相同默认方法的接口时会发生什么情况?那么在以前没有默认方法的时候我们只能在兔子这个实现类中定义一个他自己的私有飞的方法,突然有一天我又想让猫飞了那么还需要在这个猫里面定义一个私有的方法。现在有了默认的方法,我们只需要在接口里定义好飞的默认方法就行,然后在需要飞的时候通过。
2022-10-25 11:01:30
505
原创 Java8-方法参数反射
Java提供了一项新功能,您可以在其中获得任何方法或构造函数的形式参数的名称。java.lang.reflect包包含所有必需的类,例如Method和Parameter,可用于参数反射。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。如果您不使用**-parameters**标志来编译Calculate.java文件,则上面的代码将产生以下输出。反射的方法可以是类方法或实例方法。
2022-10-25 11:00:04
756
原创 Java8-StringJoiner类
Java在java.util包中添加了一个新的最终类StringJoiner。它用于构造由定界符分隔的字符序列。现在,您可以通过传递诸如comma(,),hyphen(-)等分隔符来创建字符串。还可以将前缀和后缀传递给char序列。
2022-10-25 10:51:59
239
原创 Java8-重复注解和类型注解
需要注意的是在使用 getAnnotation(Class annotationClass) 方法来获取重复注解,会返回 null。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。JDK 8引入了重复注解的概念,允许在同一个地方多次使用同一个注解。注意: Java程序中写满了类型注解,这种无处不在的类型注解可以让编译器执行更严格的代码检查,从而提高程序的健壮性。
2022-10-21 15:09:17
632
原创 Java8-接口的新增(默认方法和静态方法)
而且一个接口的实现必须实现该接口所有的抽象方法,这并不是一个可选择的行为,如果我们在一个接口中增加了新的方法就会影响到其所有的实现类,很可能有些实现类根本不需要这个功能,但是又不得不去实现该功能。允许类实现多个接口,当一个类实现多个定义相同默认方法的接口时会发生什么情况?那么在以前没有默认方法的时候我们只能在兔子这个实现类中定义一个他自己的私有飞的方法,突然有一天我又想让猫飞了那么还需要在这个猫里面定义一个私有的方法。现在有了默认的方法,我们只需要在接口里定义好飞的默认方法就行,然后在需要飞的时候通过。
2022-10-21 15:06:48
412
原创 Java8-Optional(空处理)
也就是: Optional主要用于作为方法返回类型,表示说我这个方法可能返回是NULL你需要处理下,并且Optional内部提供了处理的方式了, 还有一个好处就是在一个对象调用链比较深的时候,可以比较简短代码的去处理全调用链的空值情况 , 但要是同时处理多个不同任务的空值那么还不如使用if进行处理,如果用Optional就会显得累赘。但NullPointerException 的本质问题是,在一个不该是 null 的地方,传进来了 null,这是一种异常,不是程序可正常处理的情况。
2022-10-21 15:05:31
697
原创 Python-Requests
requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多,requests 允许你发送 HTTP/1.1 请求。免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。每次调用 requests 请求之后,会返回一个 response 对象,该对象包含了具体的响应信息。在本博客学习的技术不得以任何方式直接或者间接的从事违反中华人民共和国法律,内容仅供学习、交流与参考。
2022-10-19 14:49:45
683
工具箱-win-1.0.315-x64.exe版本- 各种常用的开发工具和数据库可视化工具
2024-11-06
工具箱-mac-1.0.313-x64.dmg各种常用的开发工具和数据库可视化工具
2024-11-06
java17,内置模块冲突
2022-11-15
java的native方法是线程安全的吗
2022-05-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅