1. 软件架构软件程序通常由两方面需求组成:功能性需求:程序能为用户做什么,比如,查看订单信息、下单等。非功能性需求:除功能性需求以外的其他必要需求,比如,访问性能、安全性、容错和恢复、本地化、国际化等。非功能性需求所构建起来的正是我们所认知的软件架构。什么是软件架构?简单来说就是软件组成的基本结构,主要为三个要素:代码、代码之间的关系和两者各自的属性。最经典的软件架构就是分层架构,也就是将软件系
转载
2023-07-15 20:39:07
243阅读
# Java 应用分层分包的实践与设计
在现代软件开发中,创建一个高效、可维护和易于扩展的应用程序是至关重要的。Java 作为一种广泛应用的编程语言,广泛采用分层架构和分包设计来实现这些目标。在本文中,我们将探讨 Java 应用的分层分包设计模式,并通过代码示例、序列图和类图来阐述其实现。
## 什么是分层架构?
分层架构是一种常见的软件架构模式,其中应用程序被分为多个层次,每个层负责处理特
原创
2024-08-09 08:24:05
31阅读
写在文章开头近期和读者交流聊到项目规范,借着这个机会我们不妨聊聊主流Java项目是如何进行分层的。为什么需要分层大部分人都认为Java项目的分层无非是controller、service、mapper这3层,尽管这种规约在Java web项目几乎是默认的,有时却因为团队沟通或者需求快速迭代,导致项目中会出现以下几种情况:接口逻辑全写在controller,service仅做透传持久层的透传。
ma
转载
2024-08-20 12:19:46
81阅读
第1部分:核心原则让上游更高效的获取与处理数据(复用)。让下游能屏蔽数据的获取细节(封装)。 服务端的分层架构思想就是以此为原则进行封闭的,服务端屏蔽数据的获取,只管提供给客服端具体的数据,客户端同样不了解数据具体的获取方法,只管请求需要的数据即可。第2部分:Android中的问题示例遇到有的项目把所有的逻辑都写到了Activity中,代码几千行,封装性很差,维护性更差。具体示例:获取验证码的逻辑
转载
2024-05-13 14:57:11
18阅读
java基础分包规范 The decision to outsource work can be a huge milestone for anyone who has been working solo for a while. And it’s usually not a decision made lightly. It may be the point where you tra
转载
2023-07-20 03:07:29
48阅读
一个java系统的包结构分包方式从大的层面上讲无非就两种:先分层再分模块先分模块再分层##1.先分层再分模块 何为先分层再分模块,即先按三层结构(数据层dao,服务层service,控制层controller)划分,然后在每层底下再构建不同的业务模块; 如:com.jackyli.demo1.dao
com.jackyli.demo1.dao.cms
com.jackyli.demo1.dao.g
转载
2023-10-16 13:44:39
283阅读
浅谈JDK并发包下面的分治思想及分治思想在高并发场景的运用原创: 叶易 洞悉源码 5天前提到分治思想,大家比较容易想起其在归并排序与快速排序中的运用。今天先给大家分享一下JDK并发包下面分治思想的运用,再和大家分享一下如何利用分治思想解决高并发场景下面的一些问题。本文说的分治思想是广义范围的分治。可能和大家之前理解的分治不太一样。我理解的分治思想是并行处理、分开处理。
转载
2024-06-25 06:04:11
27阅读
1.什么是SpringBootSpring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。2.SpringBoot层结构:DAO->Service->Controler表示层:(jsp、html)界面展示。控制层:(Controller) 控制界面跳转
转载
2023-09-09 17:30:49
156阅读
典型的J2EE项目,package的设计有成熟的套路可循,如分为domain、dao、service、action等等,职责已经分解的比较单一和 清晰,循环依赖这样的情况出现并不多。而在一般的java项目,如服务器程序、客户端程序和通用性框架的开发中,包的设计并没有套路可循,毕竟由于应用和 业务种类的不同,想得出通用性的设计套路是不大可能的。这时候遵循一些原则
转载
2023-11-24 14:27:48
80阅读
项目分层(分包)view层:视图层,项目中的界面;controller层:控制层,获取界面上的数据;将要实现的功能交给业务层处理;service层作用: 业务层, 功能的实现, 与controller控制层和数据访问层DAO交互, 将对数据库的操作交给DAO数据访问层来处理dao层作用: 数据访问层, 用来操作数据库表的数据db数据库: 这里指MySQLdomain 实体包: 存放JavaBean
转载
2023-06-18 23:46:49
90阅读
这段时间由于工作需要,一直学习、研究jbpm。起初一窍不通,走了不少弯路,重jbpm3看到了jbpm4,。虽说公司项目要求用jbpm4,刚开始先从jbpm3 看起,jbpm4 对jbpm3基本上是一种重构性升级,但通过对比着学习还是掌握了不少东西。
近两天看了看jbpm的源码,虽看得不是很明白,理解也不是很深刻,但还是从整体上了解了这个框架的内部结构,运
转载
2023-08-02 10:41:45
122阅读
六边形 架构 是一种用于设计软件应用程序的架构模式。近年来,它的受欢迎程度有所增加,因为它是传统分层架构的替代品。分层架构有什么问题?这种架构模式应用 SoC(关注点分离)原则将我们的组件分解为层,每一层都有不同的职责。通常,有 3 层:表示层,其中包含用户界面。业务层或领域层,包含业务逻辑。持久层,处理数据库操作。在应用这种架构模式时,我们面临着层与层之间的依赖关系,即每一层
转载
2023-10-12 10:21:06
61阅读
最近在公司写了一个项目,需要将项目打成jar包并且发布在服务器上并成功运行,但是需要将项目的依赖包以及配置文件分离开来,之前我打包方式通常是将依赖包一起打进jar包组长告诉我在使用maven为springboot项目打包时会发现打完的jar包会很大,而实际上里面绝大部分的大文件为静态资源和第三方依赖的jar包,而动辄百兆的jar包每次发布时候就很头痛了,上传服务器时由于带宽的限制每次都非常慢,其次
转载
2024-05-30 17:51:46
39阅读
前言之前公司项目里需要一个文件分片上传的功能。当时随便在网上找了一个放进去。实现方式是: 这个实现步骤很鸡肋,对文件做了两次分片。我重新开发了一遍,实现方式:
那就上代码吧。java后端
PartUploadController类package com.mla.controller;
import com.aliyun.oss.ClientException;
impo
转载
2024-07-01 12:19:37
52阅读
2020.7.4今日目标: 能够说出什么是分类思想; 能够说出什么是分包思想; 能够掌握static关键字的语义; 能够完成信息管理系统.案例驱动方式: 提高代码的复用性,可读性,维护性. 分类思想:分工协作,专人干专事; 每种类负责专门的问题:例如逻辑类中只有逻辑判断; 录入信息类中只有接收信息等等; 实体类:封装信息 Dao:数据访问类 Service:业务处理类 Controller:和前端
转载
2024-03-13 10:35:00
72阅读
包机制在Java中,为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。它的语法格式为:package package1[.package2[.package3...]];在正式的开发中,一般都采用公司域名倒置来作为包名,比如,www.baidu.com,在开发中,一般就会使用com.baidu.XXX来分包,比如博主完成学校期末项目时,采用的分包如下: 我们使用包机制将其具体划分,更
转载
2023-08-04 14:10:16
93阅读
5、包的声明与访问5.1 包的概念 java的包,其实就是我们电脑系统中的文件夹,包里存放的是类文件。 当类文件很多的时候,通常我们会采用多个包进行存放管理他们,这种方式称为分包管理。 在项目中,我们将相同功能的类放到一个包中,方便管理。并且日常项目的分工也是以包作为边界。 类中声明的包必须与实际class文件所在的文件夹情况相一致,即类声明在a包下,则生成的.class文件必须在a文件夹下,否则
转载
2023-10-17 10:34:57
80阅读
分而治之 一个非常有效地处理大量数据的方法。著名的MapReduce也是采取分而治之的思想。简单来说,就是如果你要处理1000个数据,但是你并不具备处理1000个数据的能力,那么你可以只处理其中的10个,然后分阶段处理100次,将100次的结果进行合并,那就是最终想要的对原始1000个数据的处理结果。Fork/Join框架 Java中通过使用fork()后系统多了一个执行分支(线程),索引需要
转载
2023-10-09 09:05:22
108阅读
Socket 粘包分包的原因及解决办法该文章部分引用来自:原因socket发生粘包分包实际上是在TCP传输协议对数据的优化,TCP是“流”协议,传输的过程就像流水一样没有边界,没有界限,而实际上我们只需要取出我们发送的部分即可;这里说明下UDP是"数据包"协议,所以在UDP中不存在粘包分包的情况。为什么会分包?在传输过程中,TCP为了保护网络(也称为流量控制),并不是接收到什么就传递什么,而是根据
转载
2024-07-03 02:03:23
62阅读
# Java分包
Java是一种面向对象的编程语言,它的代码组织规则是以包(package)为单位的。包是Java中用于组织类和接口的方式,它可以将相关的类和接口放在一起,方便管理和使用。在本文中,我们将介绍Java分包的概念、作用以及如何使用它来组织代码。
## 什么是Java分包
Java分包是指将相关的类和接口放在同一个包中的行为。一个包可以包含多个类和接口,这些类和接口可以有相同的访
原创
2023-09-21 00:38:58
107阅读