首页
学习
活动
专区
工具
TVP
发布

JavaEdge

关注公众号:JavaEdge,加入全国最大的后端交流群。
专栏作者
2432
文章
2416730
阅读量
175
订阅数
探寻数据服务的本质:API之外的可能性
数据服务在数据建设中发挥着重要的作用。数据服务到底啥样? 是不是只对外提供一个API? 这么简单?
JavaEdge
2023-07-31
1700
Spring判断方法名是符合给定的SPEL+表达式的+API
我们先使用SpelExpressionParser类来解析表达式,然后再创建一个StandardEvaluationContext对象,并将方法名作为变量设置到上下文中。最后,我们使用parseExpression方法来解析表达式,并使用getValue方法来获取表达式的结果。在此例子中,我们的表达式为#methodName.matches(‘get.*ById’),它将检查方法名是否以"get"开头,并以"Id"结尾。 这是一个简单的例子,可根据需要调整表达式来支持更多的模式匹配。
JavaEdge
2023-07-09
1370
Spark SQL实战(04)-API编程之DataFrame
Spark SQL中,SQLContext、HiveContext都是用来创建DataFrame和Dataset主要入口点,二者区别如下:
JavaEdge
2023-03-25
4K0
动态代理-RPC实现核心原理
实现过统一拦截吗?如授权认证、性能统计,可以用 Spring AOP,不需要改动原有代码前提下,还能实现非业务逻辑跟业务逻辑的解耦。核心就是动态代理,通过对字节码进行增强,在方法调用时进行拦截,以便于在方法调用前后,增加处理逻辑。
JavaEdge
2023-02-26
3780
如何了解一个软件的设计?
很多人直接看源码,一头扎入代码,很快就迷失其中,最初那股子探索精神,也会逐渐被迷茫所替。有多少次你满怀激情打开一个开源项目,结果多半坚持不了就放弃。问题出在哪?迷茫是因为缺少对软件整体了解,如同不带地图指南针就闯入热带雨林,迷路只是早晚。阅读源码是必经一步,却不是第一步。应先从了解软件设计开始。
JavaEdge
2023-02-01
4500
关注专栏作者,随时接收最新技术干货
JavaEdge
华为软件开发工程师
过度设计有意义吗
看着自己每次根据设计原则及模式的代码重构,虽效果不错,但也自省:如果我的每段代码都这么写,是不是过度设计?把握设计的度,需长久锤炼。行业也总结了很多原则,帮助我们把握设计的度。它们是一种思考方法、一种行为准则。
JavaEdge
2023-01-15
4160
华为技术专家教你如何实现一个Java连接池?
若客户端SDK没有使用连接池,而直接TCP连接,就需考虑每次建立TCP连接的开销,因为TCP基于字节流,若在多线程下对同一连接操作,就有线程安全隐患。
JavaEdge
2022-11-30
3490
告别jodatime!拥抱Java8日期时间类LocalDate、LocalDateTime详解
例如,现有的类(例如java.util.Date和SimpleDateFormatter)是非线程安全的,从而导致用户潜在的并发问题,这不是一般开发人员在编写日期处理代码时会期望处理的问题。 一些日期和时间类还表现出相当差的API设计。例如,年份java.util.Date从1900开始,月份从1开始,天从0开始,这不是很直观。
JavaEdge
2022-11-30
1.2K0
Java架构师教你写代码(一) - 使用静态工厂方法(简单工厂)替代构造器
这其中URLStreamHandler就相当于各种抽象产品,而其实现类即各种具体的产品 URLStreamHandlerFactory就相当于 VideoFactory 而如下 Factory 就相当于如 JavaVideoFactory/PythonVideoFactory
JavaEdge
2022-11-30
4240
Java线程等待、唤醒通信机制详解
要想实现多个线程之间的协同,如:线程执行先后顺序、获取某个线程执行的结果等。 涉及到线程之间相互通信,分为如下四类:
JavaEdge
2022-11-30
7130
Kafka实战(五) - Kafka的秘技"坂本"之争
不论是哪种Kafka,本质上都基于core Apache Kafka 那就来说说Apache Kafka版本号的问题
JavaEdge
2022-11-30
5360
Go实战抢红包系统(三)-架构设计
◆ 承上 说明业务逻辑和业务领域模型 ◆ 本身 保证代码有更好的可读性和可维护性、可扩展性 ◆ 启下 承载代码运行的硬件部署架构
JavaEdge
2022-11-30
2720
Flink实战(三) - 编程范式及核心概念
Flink程序是实现分布式集合转换的常规程序(例如,过滤,映射,更新状态,加入,分组,定义窗口,聚合)。最初从源创建集合(例如,通过从文件,kafka主题或从本地的内存集合中读取)。结果通过接收器返回,接收器可以例如将数据写入(分布式)文件或标准输出(例如,命令行终端)。 Flink程序可以在各种环境中运行,独立运行或嵌入其他程序中。执行可以在本地JVM中执行,也可以在许多计算机的集群上执行。
JavaEdge
2022-11-30
1.4K0
基于Spark的机器学习实践 (二) - 初识MLlib
MLlib是Spark的机器学习(ML)库。 其目标是使实用的机器学习可扩展且简单。 从较高的层面来说,它提供了以下工具:
JavaEdge
2022-11-30
2.4K0
reactive stream 响应式流
2015 年反应式流 (Reactive Stream) 规范诞生,定义了如下四个接口:
JavaEdge
2022-11-30
4350
Kafka的安装与入门基础
Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。 Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。
JavaEdge
2022-11-30
6130
Lock锁
锁是用来控制多个线程访问共享资源的方式 一般来说,锁能够防止多个线程同时访问共享资源(但也有的锁可以允许多个线程访问共享资源,比如读写锁) 在Lock接口出现前,靠synchronized实现锁功能,但是在Java5之后并发包中新增了Lock接口(及其相关实现类)来实现锁功能.
JavaEdge
2022-11-29
4300
为什么要学习数据结构和算法?
是不是觉得数据结构和算法,跟os、计网一样,属于脱离实际工作的屠龙术? 除了面试,其实这辈子也用不着?
JavaEdge
2021-12-07
3680
架构之美:教你如何分析一个接口?
任一项目中,接口都很多,理解接口就是一个个读接口源码吗? 相信没有人能把所有接口细节记住,
JavaEdge
2021-12-07
2K0
高可用架构设计(2) - hystrix
在分布式系统中,每个服务都可能会调用很多其他服务,被调用的那些服务就是依赖服务,有的时候某些依赖服务出现故障也是很常见的。
JavaEdge
2021-12-07
1890
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
【玩转EdgeOne】征文进行中
限时免费体验,发文即有奖~
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档