# nemo
**Repository Path**: QidoudouHouse/nemo
## Basic Information
- **Project Name**: nemo
- **Description**: No description available
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-10-30
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 邮政新一代开发框架NEMO
```
nemo是邮政java服务端新一代开发框架,整套框架基于SpringBoot和阿里PandoraBoot。
重新编写一套新的开发框架,主要是希望大家在开发的时候,能够脱离繁琐的SpringMVC的XML配置,
以及需要配置在本地的AliTomcat和taobao.sar,
让大家够更加轻巧方便的在本地进行开发和联调,也可以跟上当前主流技术的步伐。
nemo虽然支持阿里巴巴的pandora、hsf体系,但是nemo的目标不止于此,
后续nemo会加入dubbo和SpringCloud的支持,让我们的开发可以脱离阿里云技术线。
```
***
## 关于nemo
```
邮政正在使用的服务端框架叫做coral,也就是珊瑚的意思。
而nemo的灵感正来源于此,看过电影海底总动员的同学们都知道,nemo是一只畅游在珊瑚之间的小丑鱼。
珊瑚生长在海底,繁茂、生机盎然,提供给小丑鱼赖以生存的海底生态系统。
我们的coral开发框架也正是如此,它大而全,为我们在线业务提供了强有力的开发支持。
而我希望的nemo,它更小巧、轻便,它起源于coral缺并不依赖coral,能够让我们的开发更加快速而简单。
```
***
## 组件说明
### nemo-mybatis-starter
```
基于mybatis的数据层框架,定义了丰富的内置CRUD方法,让大家开发中几乎不用再重新编写SQL。
具体使用方式参见子项目中README。
```
### nemo-redis-starter
```
基于SpringRedis的缓存框架,支持了原生starter不支持的多数据源,并且提供了默认的JSON序列化方式和分布式锁实现。
具体使用方式参见子项目中README。
```
### nemo-web-starter
```
基于SrpingBootWeb的http接口开发框架,支持返回结果自动封装、统一异常捕获、内置健康检查接口、动态跨域配置等功能。
具体使用方式参见子项目中README。
```
### nemo-vo
```
公共对象、常量、异常、枚举类
```
### nemo-utils-starter
```
公共工具类
```
***
## 使用方法
### 原生SpringBoot
pom文件继承nemo,再依赖相应组件即可,因为nemo组件已经在parent里设定好版本号,依赖的时候不需要设置版本号
```
nemo
cn.chinapost.nemo
nemo-latest-version
cn.chinapost.nemo
nemo-web-starter
```
### 阿里巴巴PandoraBoot(EDAS-HSF)
pom文件继承nemo-pandora-base,再依赖相应组件即可,因为nemo组件已经在parent里设定好版本号,依赖的时候不需要设置版本号
```
cn.chinapost.nemo
nemo-pandora-base
nemo-latest-version
cn.chinapost.nemo
nemo-web-starter
```
### 全部依赖
如果想一次性依赖全部组件,直接继承nemo-framework-base就好。
因为coral是继承跟pom之后对全部组件进行依赖,所以nemo也提供了这种方式。
但是这并不是nemo小巧灵活的初衷,强烈不建议这样使用。
```
cn.chinapost.nemo
nemo-framework-base
nemo-latest-version
```
## 开发计划
|模块|功能|状态|
|----|-----|-----|
|nemo-web-starter|HTTP接口公共组件|已完成|
|nemo-redis-starter|Redis公共组件|已完成|
|nemo-mybatis-starter|数据库公共组件|单元测试中|
|code-generator|代码生成器|已完成|
|nemo-vo|公共常量、枚举、对象|持续完善中|
|nemo-utils-starter|通用工具类|持续完善中|
|nemo-rocketMq-starter|阿里rocketMq公共组件|待开发|
|nemo-log|日志公共组件|待开发|
|nemo-elastic-search-starter|es公共组件|待开发|
|nemo-scheduleX-starter|阿里定时任务公共组件|待开发|