PAP 管理平台 pap-all-project

MIT
Java 查看源码»
跨平台
2019-06-05
alexgaoyh

针对参加工作以来遇到的业务问题,搭建一套自认为较独立的业务模块,命名为PAP 快速开发框架。

技术栈: 技术栈为 Spring Boot 2.x 配套 Spring Cloud、 Mybatis、 Redis 、RabbitMQ、Activiti

基础模块:
1、PAP-POM
        1、定义一个Maven项目,packaging设定为pom,用来约定依赖组件的版本号,保证所有 PAP 项目,所依赖的外部组件的版本号保持相同,防止不必要的组件间调用异常。
        
        2、由于目前的Maven项目中,parent 父节点只能有一个,为了防止 sprint-boot 项目尝试定义多个 parent 节点,参照 spring boot 多个parent 解决。
        那么业务模块引用 PAP-POM 就可以采取如下方式
                

<!-- 自定义统一依赖版本的基础项目,其他的项目在引用依赖的时候直接继承该项目即可,这样使用的依赖版本就能保持一致性。 -->
<dependencyManagement>
    <dependencies>
     <dependency>
      <!-- Import dependency management from Spring Boot -->
      <groupId>com.pap</groupId>
      <artifactId>pap-pom</artifactId>
      <version>0.0.1-RELEASES</version>
      <type>pom</type>
      <scope>import</scope>
     </dependency>
    </dependencies>
</dependencyManagement>

2、 PAP-OBJ  PAP-BASE
        1、一些 POJO 类、通用的 BASE基类、Util方法;
        
        2、PAP-BASE 中,含有一些自定义的Mybatis Generator Plugin,用来方便的进行代码生成操作(PAP-CODE-GENERATOR)。
            扩展mybatis-generator-plugin查看
            mybatis-genarator 自定义插件
            mybatis-generator 自定义注释
            mybatis-generator 基类继承
            
3、 PAP-CODE-GENERATOR
        1、此代码生成器分为两部分,一个是基于 Mybatis-generator-plugin 插件的代码生成器,一个是基于 freemarker 的代码生成器,需要修改 mybatis-generator.properties 文件的参数
            1.1、修改数据源: classPath    driverClass    connectionURL    userId    password
            1.2、修改文件路径: targetProject    targetPackageBase        工作空间所属路径与package路径
            1.3、表名:    tableName    domainObjectName    alias    表名、映射的实体类名称、表的别名(防止多张表的同名列)
            
4、 PAP-CALCULATE
        1、JAVA 的四则运算计算器,解决 Excel 的公式,自定义的四则运算公式
            java 四则运算,并可完成 自定义函数 表达式 功能
            JAVA 计算器 自定义公式 解决EXCEL计算公式问题
            
自定义基础模块: 自定义starter
    1、 pap-bean-spring-boot-starter
        1、分布式主键生成,使用 twitter 的 IDWorker 生成器;
        2、spring自定义参数解析器,将 request.header 里面的用户数据进行解析成对象,方便controller使用;
        
    2、pap-logback-operdb-spring-boot-starter
        1、自定义操作日志, 将用户的操作记录异步持久化数据库中;
        2、使用 Logback Interceptor, 将数据按需异步持久化,同时扩展Logback 默认的4个字段为 32个,方便参数处理(源码Gitee);

    3、pap-sequence-starter
        1、ERP 项目中,会有大量的 流水号生成的功能,将此处的功能进行抽离;
        2、支持 DB(乐观锁) 或者 Redis(原子性incr) 两种方式,按需引入(详见ReadME.md 文件);
        
业务基础组件
    1、PAP-ACTIVITIY
        1、工作流,详见ReadME.md
            流程在线可视化定义、初始化任务、认领任务、我的申请、我的代办、批注历史、任务审批、审批拒绝;
            
    2、PAP-RabbitMQ
        1、消息中间件,注意此处可以通过消息中间件解决分布式事务最终一致性的问题(AOP+守护进程);
        2、事务消息
        3、死信队列,邮件发送;
        
    3、PAP-UPLOAD
        1、统一文件上传: 注意修改临时上传文件,防止操作系统将临时文件夹清空造成业务中断;
                  
    4、PAP-SPRING-BOOT-SPI-DEMO
        1、SPI扩展点: SPI解决Saas的定制化服务问题;
        
    5、PAP-SPRING-BOOT-ADMIN
        1、软件监控: 解决服务可用性监控;


业务组件
1、PAP-GATEWAY、 PAP-UUAJWT
        1、使用 spring-cloud-starter-gateway 定义网关,同时使用 spring-boot-starter-security 进行鉴权(使用 JWT 进行登录用户信息维护);
        
        2、定义 PAP-UUA 工程,此工程封装 JWT 操作(登录获取Token、解析Token、刷新Token), gateway网关透传uua项目,不做权限验证;
        
        3、具体的业务子系统需要进行鉴权操作,则通过 JWT 整合 security 进行登录用户鉴权处理。 Security认证管理器JWT.
        

的码云指数为
超过 的项目
加载中

评论(1)

alexgaoyh
alexgaoyh 软件作者
PAP 为 JAVA 语言的快速开发框架。

暂无资讯

暂无问答

PAP-快速开发框架:整体模块说明

https://gitee.com/alexgaoyh/pap-all-project 针对参加工作以来遇到的业务问题,搭建一套自认为较独立的业务模块,命名为PAP。 技术栈: 技术栈为 Spring Boot 2.x 配套 Spring Cloud、 My...

06/04 15:01
196
1
spring+mybatis多数据源的配置

解决方案: 多套sqlSessionFactory,针对不同的数据源 数据源 Xml代码 <something-else-entirely> <proxool> <alias>peccancy</alias> <driver-url>jdbc:oracle:thin:@172.16.60.46:1521:or...

2016/04/24 11:06
157
1
PPoE 与PPP 协议分析

PPP的连接控制协议(LCP)、认证协议(CHAP、PAP)、IP控制协议I(PCP) 分析一(PPPoE) 1.IP接入的功能包括动态IP地址分配、AAA和ISP动态选择 2.PPPoE主 要分为两个阶段即Discovery(地址发现)阶段和...

2014/07/28 14:12
69
0
在ubuntu下搭建pptp vpn服务器

看到一篇vpn的文章,很好

2014/07/18 02:35
178
1
字符串查找

(1)$str ="/web/a/b/index.html"; $str_str1 =strrpos($str,'/');// 查找 "/" 在字符串中最后一次出现的位置 print_r($str_str1); //输出:8 $str_str2 =strpos($str,'/');// 查找 "/" ...

2018/06/04 15:20
5
0
PPP认证方式pap chap chap2

PPP点到点协议(Point to Point Protocol,PPP)是IETF(Internet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。它解决了SLIP中的问题,并成为正式的因...

2017/04/10 11:29
129
0
ppp一

2009-08-08 18:46 ppp试验 一 --------------------------------------------------------------------------------------------- ------------------------------------------------------...

2015/06/08 10:00
8
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部