Java架构设计
文章平均质量分 80
灿若繁星
这个作者很懒,什么都没留下…
展开
-
如何做好系统分析与设计
系统分析与设计的质量直接关系到项目需求落地的质量原创 2022-03-28 21:12:05 · 2926 阅读 · 0 评论 -
如何基于Spring Aware和InitializingBean接口实现策略模式
在实际开发中常会用到策略模型,根据不同的场景选用不同的策略来处理业务,实现策略模式的方法有多种,今天介绍基于Spring Aware和InitializingBean接口来策略模式的实现方式,该实现方式比较简单优雅。本文的代码示例根据加减计算策略来做一个简单的实现demo。一、策略模式实现思路1.implements 实现ApplicationContextAware接口,通过该接口获取Spring容器, 再根据容器获取所有的实现策略, 并把策略组装到一个集合中。2.implements实现Initia原创 2021-02-01 19:04:23 · 536 阅读 · 0 评论 -
如何基于Spring 事件驱动模型实现业务解耦
Spring基于事件类EventObject和事件监听类ApplicationListener等实现了一套事件驱动模型,基于该模型可以实现服务之间的解耦,避免业务逻辑都堆积在一起,提升业务架构的可扩展性和可维护性。一、Spring事件驱动模型所谓事件驱动,简单说实就是事件A的发生,关联驱动了其他事情的发生,比如一个用户注册成为某品牌微信会员后,商家可能会给用户发打折券、发短信通知等,在这个场景中,用户注册这一行为驱动了后续其他的动作。而用户注册之后的其他动作是可以通过观察者模式来..原创 2021-01-31 17:35:59 · 416 阅读 · 0 评论 -
阿里出品,Excel 操作利器:easy-excel
最近在做excel数据导出时,发现了一款挺好用的excel处理开源框架:easy-excel,阿里巴巴出品,github上已有10.7K Star,整个使用下来比较突出的有两点: 容易上手,无论是注解还是api比较好用 相比Apache poi,比较节约内存,避免内存溢出等问题。 下面以excel的数据导出的demo为例,谈谈该框架的应用实践 使用@ExcelP...原创 2019-11-04 22:05:25 · 771 阅读 · 0 评论 -
浅析MVC设计思想与三层体系结构
一、什么是三层体系结构三层体系结构是在客户端和数据库端之间引入一个“组件层”,并以业务逻辑为核心,将整个项目在逻辑逻辑上分为表现层、业务层、数据访问层。二、什么是MVC设计思想M代表model V代表view C代表controller。view即为客户所能看到的页面,controller即为控制器,model即为模型。MVC设计思想主要用于表现层,准确来说 MVC 是以页面为核心,将原创 2013-04-25 17:05:32 · 1906 阅读 · 0 评论 -
DAO设计模式解析
一.DAO设计模式简介DAO是Data Access Object的缩写,即为数据库访问对象,属于javaEE数据层的操作。DAO设计模式封装数据库中表的全部操作,对业务层隐藏数据访问的细节,数据层仅为业务层提供数据库操作的接口,实现了业务层与数据层的分离,避免业务层和数据层的大杂烩,有利于项目后期的维护。二.DAO设计模式五虎将DAO设计模式分为五部分:数据库连接类、VO类、DAO接原创 2013-04-25 17:06:37 · 1802 阅读 · 1 评论 -
如何保证db与缓存的数据一致性
为了提升性能,缓存在系统开发中具有普遍的应用。常见的模式是先查询/更新db后再去更新缓存,那么如何保证db和缓存的数据一致性的问题是实际开发中经常遇到的问题。这种场景下容易造成数据不一致的问题主要是缓存双写。 一、缓存双写问题 先查询或者更新db,然后再更新缓存,这里可能出现的一种不一致的情况是db更新或查询成功,但是缓存更新失败了,这个不一致的问题可以通过重试更新缓存的方...原创 2018-10-28 13:51:54 · 6999 阅读 · 3 评论 -
责任链模式你用对了吗
责任链是很多框架和项目常用的设计模式,可有效保证代码的可扩展性、复用性、高内聚低耦合,责任链模式本身并不复杂,但是很多博客的示例代码的用法属于“教科书”式的实践,不适合在实际软件工程中的运用,笔者将结合在项目中使用的心得体会,谈谈使用责任链模式的正确姿势。一、何谓责任链责任链的设计模式其实就是把若干个request处理器,以“链”的形式组织起来,“链”是该设计模式的关键和核心问题。责任...原创 2019-04-06 18:41:26 · 1675 阅读 · 1 评论