
JAVA后台
文章平均质量分 89
目前大多数开发项目还是以 JAVA 为主,码农又如此之多,竞争如此激烈,被逼的卷啊。
JAVA 生态的一些技术,每篇都是知识点。
YPhen
公众号同步【YPhen聊码】同步更新!
无需关注,无需知识付费,纯技术分享;博客提升自我,帮助他人,若有益,吾之幸,因吾价值尚存 !
展开
-
CountDownLatch / Semaphore 示例及使用场景
AQS 内部有一个 state 标记状态,CountDownLatch 和 Semaphore 都是借助这个状态标记作为一个计数器来实现控制多个线程的,计数器的初始值为线程的数量,每个线程执行完后计数器会减一,当计数器的值是 0 的时候,表示所有的线程都已经完成了任务。原创 2023-01-08 11:56:25 · 741 阅读 · 0 评论 -
图数据库 Neo4j 学习之SpringBoot整合
相对于Java通过Neo4j驱动来连接Neo4j数据库操作来说,SpringBoot引入starter组件来操作Neo4j 简直要上天,简单易用。原创 2022-12-11 15:19:22 · 3116 阅读 · 17 评论 -
图数据库 Neo4j 学习之JAVA-API操作
项目里面主要还是要靠后端来获取数据提供到前端展示,那就避免不了通过开发语言来连接Neo4j来操作,本人一个纯纯的JAVA攻城狮,则用JAVA来进行操作。其实还要学会了基本的操作,那么Java连接也就很简单了,Java Driver只是一个辅助的操作工具而已,也没有什么技术含量了感觉,就是简单的增删改查,不过看着例子倒是写起来块了很多。原创 2022-12-10 16:00:41 · 1633 阅读 · 0 评论 -
SpringBoot 学习之启动原理以及核心源码(九)
SpringBoot 自动装配基本上介绍完了,主要的几个注解和借助 Spring 的,通过每个 starter jar包里面的配置文件来实现,把里面配置好的 Bean 进行初始化并放进 IOC 容器以便其他实例中来使用,基本原理是这样的。不过我们都知道,当一个SpringBoot项目构建出来后,我们直接可以通过 java -jar xxxx.jar 来启动,我们就可以访问了;原创 2022-11-26 19:07:35 · 1207 阅读 · 0 评论 -
SpringBoot 学习之自动配置基本原理(八)
Spring boot框架,是一个使用起来特别方便的框架,基本上三步走就可以构建起来一个应用了(第一步:pom.xml 引入依赖,第二步:配置 yml 或者 properties 配置文件, 第三部:main方法调用 run() 方法),如此方便都是基于框架的注解来实现,而且基本上所有的功能都可以通过注解来实现,避免了我们再去配置复杂的 xml 文件了。接下来了解一下Spring Boot框架的几个核心的注解。原创 2022-11-26 11:20:43 · 497 阅读 · 0 评论 -
元注解的了解 @Target、@Inherited
我们在开发自定义注解的时候,就必须要依赖于@Target、@Retention、@Documented、@Inherited这四个元注解,所以接下来就了解一下这几个元注解。元注解就是在我们声明自定义注解的时候需要用到的注解,它们是注解的亚当和夏娃。原创 2022-11-20 15:49:25 · 317 阅读 · 0 评论 -
Spring 学习之扩展点总结之后置处理器(一)
本文用 Spring-framework-5.x 版本,Spring 源码用的是 Gradle 管理的,下载源码用 Gradle 进行编译即可在开发工具(idea)里面进行测试。我们平时使用 new 关键字来实例化一个 Class,得到的就是一个实例对象。原创 2022-09-26 22:15:22 · 1844 阅读 · 3 评论 -
ElasticSearch学习随笔之嵌套操作
本文主要对ElasticSearch嵌套(Nested) 操作,以便上手 用。原创 2022-09-24 00:41:39 · 3419 阅读 · 0 评论 -
微服务学习之Nacos(配置中心)
Nacos 作为配置中心,使用起来很简单,也很方便。在 服务注册与发现 一文中,对 Nacos 的启动做了简单介绍,现在直接使用。原创 2022-09-04 15:03:10 · 1874 阅读 · 0 评论 -
微服务学习之服务注册与发现(OpenFeign服务间调用)
在 《Nacos服务搭建及使用》中,对Nacos的服务搭建与调用基本操作做了简单的介绍,服务调用也是用RestTemplate实现服务间的调用,这篇讲的是另一种调用方法,OpenFeign 的服务间调用的基本方式。在说 OpenFeign 介绍之前,必须先提一嘴 Feign,什么是 Feign?Feign 是Netflix 开发的声明式、模板化的 HTTP 客户端,可以帮助我们更便捷的调用 HTTP api,具有可插入的注解支持,使用起来方便。原创 2022-09-03 18:19:33 · 1984 阅读 · 0 评论 -
微服务学习之Nacos(服务注册与发现)
在微服务的世界里,少不了服务的注册与发现,因为我们的所有服务避免不了扩展,每次添加一个服务就去把新的服务地址配置到别的服务配置文件里面,过于麻烦,那么就需要一个服务来发现其他的服务并且收集起来方便管理。Nacos就是非常好的解决方案,接下来就搭建一个服务的注册与发现服务,Nacos不像Spring Cloud 里面的 Eureka 需要自己搭建服务,Nacos是一个成熟的应用,我们直接可以拿来用。原创 2022-09-03 15:11:58 · 2862 阅读 · 0 评论 -
微服务学习之网关(Gateway)断言和过滤器
在微服务学习之网关(Gateway)的搭建及使用中介绍了Gateway内置的断言处理和过滤器,但是并不能满足我们负责的业务逻辑使用,所以我们需要自定义 Prediate 和 Filter。原创 2022-08-29 22:31:40 · 1513 阅读 · 0 评论 -
微服务学习之网关(Gateway / Sentinel)路由及熔断限流
之前面试总是碰到面试官对网关Gateway的问题,之前只是用过Netflix的Zuul的路由转发和调用了认证授权服务进行对用户访问的控制,其实Gateway的功能更强,这不周末在吃喝玩乐的闲暇时间,还是需要学习一下才不枉周末时光。Gateway见词知意,就是大门的意思,大门呢就是一整个院子的入口,是比较重要的,关系着院内的安全和用户的同一入口引导。所以Spring Cloud 中的Gateway作为网关的身份担任着重要的角色,常用的功能包括路由转发、权限校验、限流、安全等。...原创 2022-08-28 11:44:57 · 6708 阅读 · 0 评论 -
Spring Security + Oauth2 认证授权
文章目录前言一、Spring Security + Oauth2 认证的4种模式1.1 授权码模式1.2 简化模式1.3 密码模式1.4 客户端模式二、使用步骤1.引入库2.读入数据总结前言微服务开发这么流行,安全认证非常重要,Spring Security + Oauth2 作为一个 认证授权的框架,不可或缺。一、Spring Security + Oauth2 认证的4种模式1.1 授权码模式1.2 简化模式1.3 密码模式1.4 客户端模式二、使用步骤1.引入库代码如下(示例)原创 2022-05-03 13:06:55 · 4637 阅读 · 2 评论 -
常用设计模式——组合模式
组合模式就是把类似的对象组合在一个对象中方便使用,怎么组合呢,就是树形结构来组合。比如用人来作为一个对象的话,我们就可以用组合模式来组合人际关系,我有家人、朋友、同事等关系的人,我的朋友又有他的家人、朋友、同事等关系的人,以此类推就会有好多个类似的对象了。...原创 2022-08-27 11:03:20 · 408 阅读 · 0 评论 -
常用设计模式——策略模式
定义了算法族,让它们之间互相替换,此模式的变化独立于算法的使用者。原创 2022-08-21 16:04:29 · 546 阅读 · 0 评论 -
常用设计模式——单例模式
单例,就是只有一个实例,别的地方也不能创建出第二个实例来,在日常开发中也碰到很多这种情况,比如说需要写一个公共的服务,但是也只要一个实例就够了。单例模式有好几种写法,懒汉式、饿汉式、枚举单例、静态内部类等多种写法。这种类型的模式属于创建型模式,是创建对象的最佳方式,单例类提供了其访问的唯一对象的方式,下面就来挨个介绍。原创 2022-08-21 12:18:17 · 312 阅读 · 0 评论 -
常用设计模式——原型模式、模板模式
现在有一个场景,就是好多查询或者业务处理,后端接受的参数都封装到一个对象中了,处理业务调用了不同的处理服务,每个处理的服务有可能会修改调参数对象中的值,那么每个服务就需要传一个新的参数参数对象过去,这个时候你需要没调用一个服务的时候创建一个新的参数对象出来,为了保证性能更好,就需要一个快速创建新对象并且值也一样,原型模式就是很好的选择,属于创建型模式。模板模式。。。原创 2022-08-20 18:17:03 · 683 阅读 · 0 评论 -
常用设计模式——观察者模式
如果对象直接存在一对多关系,那么对某一个对象做修改时,其他对象势必也要跟着去做对于的修改。比如现在有一个对谁A要被修改了,如果我们手动去一个个修改依赖于对象A的其它,则太不灵活了,何不让其他依赖对象 A 的对象收到一个通知,说对象A 被修改了,你们自己也修改一下,那么依赖对象A 的对象这就是个观察者的身份。原创 2022-08-20 17:28:32 · 277 阅读 · 0 评论 -
常用设计模式——享元模式
使用共享技术,有效的减少创建对象的数量,减少JVM 内存的开销,减少内存占用提高性能,这种类型属于结构型模式。原创 2022-08-14 18:42:07 · 926 阅读 · 0 评论 -
常用设计模式——装饰着模式、门面模式
在不改变现有的功能和结构的情况下,可以添加和扩展其功能,这种类型模式属于结构模式,也是作为现有类的一个包装类。原创 2022-08-14 18:41:17 · 1183 阅读 · 0 评论 -
常用设计模式——责任链模式
顾名思义,责任链模式就是每个处理者都有各自的责任,他们的责任都各自不同,每个请求的处理都不同,或多或少。我们把每个处理者排成队,每个处理者按照它们各自的责任处理这个请求并且指定了下一个处理器是谁,形成一个链路。这种类型的设计模式属于行为模式。.........原创 2022-08-14 18:39:41 · 841 阅读 · 0 评论 -
常用设计模式——建造者模式、适配器模式
设计模式是一种解决方案,是最佳实践,也是程序员们在开发过程中的一般的解决方案。其实开发中你碰到的问题,以及被前辈们碰到过很多次了,并且也比较完美的解决了此类问题并且总结了经验和教训,我们就需要把这些经验和教训学习到手,然后熟练应用到我们的开发过程中。所以什么是设计模式,我的理解就是前辈们总结出来的一套一套的在封装、继承、多态性的基础上总结的灵活的、可扩展的编码套路。...原创 2022-08-14 18:37:39 · 564 阅读 · 0 评论 -
java中如何用 firefox 截图
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代.原创 2022-05-03 19:00:00 · 675 阅读 · 0 评论 -
图数据库 Neo4j 学习随笔之基础操作
Neo4j - CQL 使用Neo4j 的 Cypher 语言是为处理图形数据库而构建的,CQL 代表 Cypher 查询语言。类似 关系型数据库的 SQL 语言。文章目录Neo4j - CQL 使用前言一、常用命令1.1 load csv1.2 create 创建1.2.1 创建单节点1.2.2 创建多节点1.2.3 创建节点(带属性)1.2.4 创建关系1.2.4.1 单向关系1.2.4.2 双向关系1.3 match 匹配1.3.1 匹配节点1.3.2 匹配关系节点详细信息1.4 return原创 2022-04-26 23:24:33 · 1942 阅读 · 0 评论 -
图数据库 Neo4j 学习随笔之基础认识
Neo4j 基础认识本文主要对Neo4j 进行一个简单的讲解。文章目录Neo4j 基础认识前言一、什么是图数据库(Graph Database)二、 理解图数据库2.1 关系数据库与图数据库直接性能对比2.2 与关系型数据库对比理解:总结前言随着社交、电商、金融、零售、物联网 等行业的快速发展,现实社会之间的关系也越来越复杂,传统的数据库很难处理关系运算。大数据行业需要处理的数据之间的关系相当复杂,一种支持海量数据关系运算的数据库,图数据库应用而生。一、什么是图数据库(Graph Datab原创 2022-04-17 17:28:53 · 1362 阅读 · 0 评论 -
ElasticSearch学习随笔之简单操作
ElasticSerarch学习随笔之简单操作ElasticSearch,创始人 Shay Banon(谢巴农)本文主要讲解ElasticSearch 基础操作,Kibana 以及 java api 调用操作。文章目录ElasticSerarch学习随笔之简单操作ElasticSearch,创始人 Shay Banon(谢巴农)本文主要讲解ElasticSearch 基础操作,Kibana 以及 java api 调用操作。前言一、分词器测试二、索引的增删改2.1 新建索引2.1.1 新建最简单原创 2022-04-17 15:20:05 · 2859 阅读 · 0 评论 -
ElasticSearch学习随笔之java api 操作
ElasticSerarch学习随笔之java api 操作ElasticSearch,创始人 Shay Banon(谢巴农)本文主讲 ElasticSearch Java api 调用操作。文章目录ElasticSerarch学习随笔之java api 操作ElasticSearch,创始人 Shay Banon(谢巴农)本文主讲 ElasticSearch Java api 调用操作。前言一、引入ES Client jar包二、操作案例2.0 实例化 ES Client 客户端2.1 增2.2原创 2022-04-17 15:18:00 · 3637 阅读 · 0 评论 -
ElasticSearch学习随笔之基础介绍
ElasticSerarch学习随笔ElasticSearch基础操作文章目录ElasticSerarch学习随笔前言一、ElasticSearch是什么?1.1 ElasticSearch 与 Lucene 的关系ES 解决Lucene使用缺点的最好方案二、基本操作1.2.读入数据总结前言此文章仅仅对ElasticSearch基础操作进行记录,方便后续工作中使用,一些查询可以从这里cpoy CQL一、ElasticSearch是什么?ElasticSearch(简称 ES) 是用 JAV原创 2022-04-17 15:15:29 · 2826 阅读 · 0 评论 -
从微信授权到微信支付
一、微信授权1、在对接微信之前,首先从微信官网(https://mp.weixin.qq.com)去注册微信公众公众账号,提交资料等待验证通过。2、验证通过后就可以 微信公众平台 获取到 AppID 和 AppScret 两个参数值,如图:3、网页授权域名如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。在 “开发 - 接口权限...原创 2019-07-24 18:02:39 · 1843 阅读 · 0 评论