BillingDubbo

所属分类:微服务
开发工具:Java
文件大小:351KB
下载次数:0
上传日期:2023-06-15 01:20:42
上 传 者sh-1993
说明:  比林杜博,,
(BillingDubbo,,)

文件列表:
LICENSE (11357, 2023-06-15)
billing-api (0, 2023-06-15)
billing-api\pom.xml (704, 2023-06-15)
billing-api\src (0, 2023-06-15)
billing-api\src\main (0, 2023-06-15)
billing-api\src\main\java (0, 2023-06-15)
billing-api\src\main\java\com (0, 2023-06-15)
billing-api\src\main\java\com\tony (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\annotation (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\annotation\Column.java (232, 2023-06-15)
billing-api\src\main\java\com\tony\billing\annotation\Table.java (249, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constants (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constants\timing (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constants\timing\TimeConstants.java (368, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\OwnershipCheck.java (902, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\enums (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\enums\EnumOwnershipCheckTables.java (1676, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\helper (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\helper\BeanHelper.java (760, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\helper\DubboBeanBridge.java (531, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\validators (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\constraints\validators\OwnershipValidator.java (1624, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto (0, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\AssetDTO.java (1872, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\AssetManageDTO.java (2055, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\BudgetCostDTO.java (1609, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\BudgetDTO.java (1138, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\BudgetOverviewDTO.java (885, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\BudgetReportItemDTO.java (1194, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\CostRecordDTO.java (2693, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\CostRecordDetailDTO.java (3917, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\LiabilityDTO.java (3394, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\ReportDTO.java (4147, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\TagCostInfoDTO.java (346, 2023-06-15)
billing-api\src\main\java\com\tony\billing\dto\TagInfoDTO.java (687, 2023-06-15)
... ...

# BillingDubbo 账单管理后台 - 基于Dubbo2.7.3 SpringBoot2.0.1实现,数据库采用MySQL 需要Redis支持,zookeeper可选内置zookeeper,建议外置 - 开发IDE需要下载lombok插件,否则编译报错,具体可以百度 - 数据库结构见[doc/SQL_STRUCT.sql](https://github.com/TonyJiangWJ/BillingDubbo/blob/master/./doc/SQL_STRUCT.sql) - 接口文档[在线](https://github.com/TonyJiangWJ/BillingDubbo/blob/master/https://app.swaggerhub.com/apis/TonyJiangWJ/bill-server-api/1.0.0) - 前端工程[vue-bill-manager-wp4](https://github.com/TonyJiangWJ/BillingDubbo/blob/master/https://github.com/TonyJiangWJ/vue-bill-manager-wp4) ## 项目结构说明 - billing-api 存放POJO 暴露给客户端的service接口等等 - billing-common 存放一些通用的工具类 - billing-server 是服务提供方,实现service接口,业务判断,数据持久化操作等等 - billing-client 是服务消费方,将http请求转换成对service的请求,并做简单的必填项判断,然后将service执行结果转换成json传递给前端 ### client 和 server 之间的用户信息传递 - 通过自定义的DubboFilter,将userId放到RpcContext的attachments中 ## 开发部署说明 ### zookeeper安装和启动[可选] - 下载安装zookeeper并启动,推荐docker方式,具体请Google或百度 - 不想安装zookeeper可以使用内置的zookeeper,修改 `billing-server` 的配置 ```yaml embedded: zookeeper: # 开启内置zookeeper enable: true ``` ### redis安装和启动[必选] - 下载安装redis并启动,推荐docker方式,具体请Google或百度 ### 数据库安装[必选] - MySQL或者MariaDB都可以,推荐docker方式,具体请Google或百度 - 创建database `my_daily_cost` 并将 `doc/SQL_STRUCT.sql` 导入即可 ### RSA秘钥对创建[必选] - 针对密码加密使用的RSA秘钥对 开发和生产部署请使用不同的密钥对 - 执行`com.tony.billing.util.RSAEncrypt.main` 生成密钥对 ```java public class RSAEncrypt { public static void main(String[] args) { // 默认生成到D:/ali/ 具体可以自行修改 genKeyPair("D:/ali/"); } //.... } ``` - 将生成路径或者密钥对存放路径配置到 `billing-server` 的配置信息中,生产和开发分别在application-release.yml和application-dev.yml中 ```yaml rsa: key: path: D:/ali/ ``` - 同时前端项目的config.js中需要修改对应的公钥信息 ```javascript export const rsaPubKeyRelease = '生产用公钥信息'; export const rsaPubKeyDev = '开发用公钥信息'; ``` ### lombok插件安装[必选] - 项目中采用了lombok来减少getter/setter等冗余代码,IDE需要安装对应的插件,否则编译报错 - [ECLIPSE中安装](https://github.com/TonyJiangWJ/BillingDubbo/blob/master/https://projectlombok.org/setup/eclipse) - [IDEA中安装](https://github.com/TonyJiangWJ/BillingDubbo/blob/master/https://projectlombok.org/setup/intellij) ### 完成以上步骤后,在IDE中导入项目代码并启动即可 - 先运行 `billing-server` 的 `com.tony.billing.bootstrap.DubboRegistryZooKeeperProviderApplication` 启动服务 - 然后运行 `billing-client` 的 `com.tony.billing.DubboConsumerApplication` 启动客户端 ### 打包 - 默认profile是开发环境的,生产打包需要添加参数`-P release` ```shell script mvn clean install -Dmaven.test.skip -P release ```

近期下载者

相关文件


收藏者