Java开发实践
文章平均质量分 96
本专栏会介绍一些实际开发过程中所需的知识技能,关注于最常用的知识而非全面,有助于上手开发而非深挖底层原理。
Java Potato
Java后端程序员,记录学习成长历程
展开
-
接口设计【开发实践】
将任意长度的数据映射为一个紧凑的、长度固定的字符串,该字符串即摘要,也被称为散列值或哈希值。摘要具有唯一性和不可逆性。唯一性指数据稍微变化,计算出的摘要就会不同,该特性常用于数据的完整性校验。不可逆性指无法从摘要还原出原始的数据,该特性可用于密码存储,数据库中存储密码的摘要,泄露摘要也不会导致密码泄露,此外摘要紧凑且长度固定的特点也便于存储。需要注意的是,摘要能保证数据的完整性,但是不能防止数据被篡改,只要知道使用的是哪个摘要算法,任何人都能计算摘要。原创 2024-06-28 10:36:49 · 865 阅读 · 1 评论 -
分布式系统常用的三注解:@DS,@DistributeLock,@GlobalTransactional【开发实践】
读写分离是一种基于主从复制的数据库读写策略,在应用程序层面(如在代码中或使用中间件)区分读写操作,主节点负责所有的写操作(增、删、改)和实时性较高的读操作(查),从节点负责实时性较低的读操作。分库:单个服务器的磁盘存储容量和CPU处理能力是有极限的,随着存储数据量的增大或请求并发数的增多,单个服务器将无法满足需求。之前使用(非必须)。分布式事务是指跨越多个分布式系统或服务的事务操作,需要保证这些操作作为一个整体,要么全部成功,要么全部失败,以此来维护数据的一致性和完整性。方法的数据源失效,使用的是外层的。原创 2024-06-04 15:11:57 · 1407 阅读 · 0 评论 -
04_初识ELK
ELK是一个用于数据收集、分析和展示的开源技术栈。日志分析、应用程序监控、运营智能、安全审计等多种场景,其中日志分析最具有代表性。原创 2024-05-30 17:07:19 · 1205 阅读 · 1 评论 -
消息队列【开发实践】
消息队列原创 2024-05-06 19:15:14 · 1209 阅读 · 0 评论 -
定时任务【开发实践】
XXL-JOB原创 2024-04-30 09:32:38 · 825 阅读 · 2 评论 -
文件导入导出【开发实践】
EasyExcel原创 2024-04-28 17:21:55 · 1545 阅读 · 1 评论 -
单元测试框架Spock【开发实践】
Spock单元测试框架原创 2024-04-17 20:19:18 · 1638 阅读 · 0 评论 -
基于Git的版本控制【开发实践】
git原创 2024-04-09 15:55:57 · 1217 阅读 · 2 评论 -
微服务中分布式事务的解决方案:seata【开发实践】
事务是一系列数据库操作的原子性集合,具备ACID四大特性。其中事务有分为本地事务和分布式事务。本地事务只能保证单个设备上的ACID特性,无法实现分布式系统中的事务管理,所以提出了分布式服务。一致性:用户访问分布式系统中的任意节点,得到的数据是一致的可用性:用户访问集群中的任意健康节点,必须能得到响应,而不是超时或拒绝分区容错:因为网络故障或其它原因会导致分布式系统中的部分节点与其它节点失去连接,形成独立的分区。集群中出现独立分区时仍能对外提供服务的能力就是分区容错能力。原创 2024-04-08 20:25:36 · 783 阅读 · 0 评论 -
状态机的理解与使用【开发实践】
状态机原创 2024-04-07 19:10:33 · 1501 阅读 · 0 评论 -
浅谈架构设计:MVC架构与DDD架构【开发实践】
(个人理解,可能不对:将view层和controller层合并为新的controller层,作为表现层暴露接口,将model层拆分为service层和dao层)强化理解:application中的方法需要的参数类型为DTO,domain中的方法需要的参数类型为DO,而dao中的方法需要的参数类型为PO。依赖倒置的体现:应用层直接依赖于领域层的接口(如repo和gateway),通过这些接口间接依赖于下层中具体的实现类(基础设施层中的repoImpl和远程服务层中的gatewayImpl)原创 2024-04-07 14:19:34 · 2130 阅读 · 0 评论 -
MyBatis Plus快速上手【开发实践】
内存数据是易失的(断电就没了),而磁盘数据是持久的(断电后不丢失),将内存中的数据保存到磁盘中的过程就是数据持久化,项目中实现数据持久化的代码层就是持久层。(图取自MyBatis-Plus:条件构造器Wrapper。原创 2024-04-02 19:20:33 · 1615 阅读 · 1 评论 -
基于Spring MVC的接口开发【开发实践】
MVC是一种设计模式、软件架构思想,将软件划分为三层:模型(Model),视图(View),控制器(Controller)。Spring MVC对这套MVC流程进行封装,帮助开发者屏蔽底层细节,并且开放出相关接口供开发者调用,让MVC开发更简单方便。原创 2024-03-29 18:01:04 · 1307 阅读 · 2 评论 -
Spring Boot集成Apollo配置中心【开发实践】
数据库的连接参数、应用的启动参数、一些系统的账号密码等信息,一般不会在代码中硬编码,而是存储于代码外部的文件中。这些信息被称为配置信息,存储配置信息的文件就是配置文件。程序需要读取配置文件来获取所需的配置信息。Spring Boot项目启动时,如果使用了Apollo配置中心,则会在启动前先去配置中心中读取配置信息。使用Spring Boot集成Apollo配置中心,需要先配置Apollo(需要配置的信息见后),告诉Apollo客户端从哪个Apollo服务器读取哪个配置。原创 2024-04-01 15:21:44 · 2277 阅读 · 0 评论