zheng项目系统简单的分析记录

原创 2017年10月23日 15:15:46

接下来是对整体分层的分析,这样才知道每次的调用顺序和每个模块之间做了什么,要承担什么任务。尽管给了一些说明,但是看得不习惯,还是自己上手操作比较的实际,印象深刻。每个不同的任何机构都有自己一套的内部代码规范和命名法则和层次结构的定义,但是基本的定义差别应该不是太大,下面进行一个简单的分析(每个模块进行简单的分析,umps的内容比较的多,主要对这个模块):

模块整体的构造:
  1. clien
  2. common 不做介绍
  3. dao
  4. rpc-api
  5. rpc-service
  6. server
    也不是给的文档完全不看啊,看还是多多少少看一些的,不然当对来说会费尽一点(大牛可以完全忽略这些)
dao子模块的分析

这个模块相对来说比较的简单,也是我们新建一个模块的时候首先建立的一个子模块,这个模块主要是创建dao的,在这个dao层下面一般有最基本的实体和dao的接口,包涵基本的crud。其中当然也有framemarker的生成类,这个就不做过多的赘述了。这个同时我也有个疑问目前还没搞懂,为什么要生成example类,平时我是真的没用到过,很少去接触jpa的东西。

server

这个模块怎么说呢,给我最大直观的感受就是,这是一个没有实现类的Java Web工程。
1. webapp,很明显。
2. 这个模块的resources配置文件相对来说是比较多的,每个文件的作用这个这次不多探究。
3. 这个模块里面是主要做控制层的,你看嘛,controller层写里面好好的,主要负责参数的传递接收。
4. 当然了,这个模块用到了swaggerUi,其实就类似一个postman,对后端人员来说开发测试相对比较方便,地址:ip:port/swagger-ui.html

  1. 但凡会一点开发的都知道基本的套路,先过一些过滤器,拦截器,然后到我们controller,做一些基本的数据处理,然后调用我们的service,好的此时我们就要用到我们的rpc-api模块的东西了
rpc-api

这个模块,简单总结一句话,全是接口(忽略mock(你要强调服务降级的话,那就加上吧),我大后端开发这么繁忙,还有时间给你前端写mock?自己mock去,呵呵)。为什么单独把这个模块的东西独立出来,就是把这接口暴露出来,用我们的dubbo,可以去看看server模块配置文件的dubbo-consumer的配置文件。

 <!-- 用户 -->
    <dubbo:reference id="upmsUserService" interface="com.zheng.upms.rpc.api.UpmsUserService" mock="true"/>

继续,接口,是接口的话当然就要去找它的实现类了,接下里就到了另一个模块:rpc-service

rpc-service

这个模块主要是两个包
1. dao.mapper
这个包里面很简单,就是存放我们的mapper.xml文件的,当然你也可以放在别的地方。
2. rpc
这里主要是service.impl,很明显了,impl,实现类。每个实现类都注入了许多的mapper(其实我更喜欢叫做dao,我是喜欢用,dao,daoImpl这种命名方式的),service里面来处理各种业务了,业务里面我们要用到不同的mapper,也就是用到我们dao模块的接口了。这个地方要注意一下,前后对应的东西,就是这里spring配置里面有一个dubbo-provide的配置文件,看见了吗?提供者,前面消费者,贴代码

 <!-- 用户 -->
    <bean id="upmsUserService" class="com.zheng.upms.rpc.service.impl.UpmsUserServiceImpl"/>
    <dubbo:service interface="com.zheng.upms.rpc.api.UpmsUserService" ref="upmsUserService" timeout="10000"/>

以上,只是一个简单的模块熟悉。还有spring和很多框架的结合使用,配置文件和对应的实现方法和作用,本次不多叙述。有写错的地方还望指出不足之处,经验资历尚浅,还望包涵。原项目地址

https://github.com/shuzheng/zheng
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014449653/article/details/78319135

用 Delphi 编写 VxD 设备驱动程序(转)

用 Delphi 编写 VxD 设备驱动程序(转)关键词:Delphi控件杂项作者:Emil Biserov(dinfo@mail.primorye.ru)(Russion) 英语翻译:Vitaly ...
  • ghj1976
  • ghj1976
  • 2000-12-21 09:02:00
  • 1459

开源项目学习之(一)------zheng环境搭建

一、项目简介 17年初就接触了zheng这个项目,感觉挺牛的,看他的架构图就知道了 现在都已经18年了,时间好快,特此记录下zheng的环境搭建,虽然,先看下码云上zheng的简介吧:https...
  • u011781521
  • u011781521
  • 2018-01-10 12:17:16
  • 7081

基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构zhen项目

原项目链接:https://github.com/shuzheng/zheng 目前看过做完整的项目,大家一起学习一下,详情请点击原项目链接的地址 前言   zheng项目创建于2016...
  • bin470398393
  • bin470398393
  • 2017-08-25 15:10:41
  • 1257

zheng项目-从rpc-service开始!

为什么要从rpc-service开始?简单的来说,因为一般我先启动的是这个这个模块,它是作为一个provider方的,现将其服务注册到zookeeper服务中心上面去,再由server端的consme...
  • u014449653
  • u014449653
  • 2017-10-25 14:31:38
  • 3139

码云zheng项目介绍

zheng 交流QQ群:133107819��、284280411��、305155242��、528049386��、157869467��、570766789��、601147566��、3099...
  • qq_34531925
  • qq_34531925
  • 2017-08-30 17:03:29
  • 1457

进击zheng项目zheng-umps-server

打了几盘农药后,就升一颗心,赛季初水真深,心累。继续上一篇说的内容,进去server的模块,server模块的里面有个admin的模块,这部分基本是前端的内容,不做解释。按照工程上结构从上到下进行梳理...
  • u014449653
  • u014449653
  • 2017-10-26 16:52:42
  • 2593

zheng项目新建一个module学习学习

看一个框架看太多也不如直接操作来的实际,顺便在做的过程中记录一下,接下来谁碰到类似的问题可以快速解决,zheng的项目下面很多的模块,其实对于我来说,很多是用不到的,我删除了很多,留下的只是作为一个基...
  • u014449653
  • u014449653
  • 2017-10-20 14:15:28
  • 5645

基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构---权限管理系统

原文链接:https://github.com/shuzheng/zheng 安利一个GitHub上的项目,见原文链接。 基于Spring+SpringMVC+My...
  • gaiyindexingqiu
  • gaiyindexingqiu
  • 2017-05-27 21:14:47
  • 6114

基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构

https://gitee.com/shuzheng/zheng前言  zheng项目创建于2016年10月4日,正在慢慢成长中,目的不仅仅是一个开发架构,而是努力打造一套从 前端模板 - 基础框架 ...
  • hliq5399
  • hliq5399
  • 2017-09-14 10:11:32
  • 2242

让zheng支持activiti工作流

我公司采用分布式敏捷架构zheng:https://gitee.com/shuzheng/zheng。不过,如果要让此架构支持activiti工作流,需要进行一定的配置。 一、打开zheng-com...
  • ctmold
  • ctmold
  • 2018-01-17 10:50:07
  • 1599
收藏助手
不良信息举报
您举报文章:zheng项目系统简单的分析记录
举报原因:
原因补充:

(最多只允许输入30个字)