常用UML图表达的重点内容总结:
用例图:角色(有什么角色)和行为(不同角色的行为是什么)。
类图:模型的抽象、模型的属性和行为及不同模型之间的关系。
时序图:参与协作的对象是什么,随着时间的推进系统的行为是什么。
状态图:系统有多少状态、状态触发的条件(图中的
同心圆表示:一条状态变化路线已到结束状态,不可逆转)
活动图:多少个系统参与协作; 每个处理流程的瞬间判断、循环是这样进行的
项目分层的好处:
-
隐藏下层业务的复杂度
-
提高系统的组件化和可维护性、可扩展性
P.S. 计算机领域的任何问题都可以通过增加一个中间层处理
常用的MVC框架模式:
model(M): 数据模型及业务处理
view(V): 表现层,如视图
controller(C): 请求处理分发
项目中数据对象分类:
DO:对应数据表的类对象;
DTO: 不同系统间的数据传输对象,一般需要进行序列化和反序列化处理,主要用于service/manager层向外传输的对象;
BO: 业务对象,无需考虑序列化和反序列化处理,由service层输出的封装业务逻辑的对象(在系统内部使用),可以是多个DO组成,
vo: 显示层对象,返回给web的对象,可以是多个BO组成
query: 用于数据查询条件的收集,禁止用map接收查询参数(容易出错)
GAV含义:
(G)groupId: 公司
(A)artifactId:项目名
(V)version: 版本号
maven的依赖仲裁:
1.按dependencyManager版本声明进行仲裁
-
如无仲裁声明,则按依赖最短路径确定版本
-
若相同路径,则按第一声明优先原则
在maven管理项目依赖中,如果出现依赖冲突的解决办法:
1. 查询具体冲突的包的来源,在idea中可通过以下途径查看包的依赖关系及冲突
2. 对于存在冲突的包,使用下面的方法进行排除冲突:
<exclusions>
<exclusion>
<groupId>xxxx</groupId>
<artifactId>xxxxx</artifactId>
</exclusion>
</exclusions>