B-Recycle是一个基于FISCO BCOS的区块链电池回收管理平台。该平台使用了Vue+SpringBoot 进行前后端搭建,集成了FISCO BCOS的Java-SDK、区块链消息中间件WeEvent。
项目结构如下:
-- B-Recycle
|-- contract
|-- docs
|-- front
|-- script
`-- server
其中:
- contract为solidity合约
- docs为流程图等puml文件
- front为Vue前端工程
- script为脚本
- server为SpringBoot后端服务
- Nodejs
- OpenJDK 12+
- FISCO BCOS链核心服务
- WeEvent区块链消息队列
- MySQL
- MongoDB
- Redis
server/src/main/resources/application.yml
# 默认启动端口8090
server:
port: 8090
spring:
……
datasource:
# MySQL相关配置
url: jdbc:mysql://localhost:3306/brecycle?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
……
redis:
# Redis相关配置
database: 0
host: 127.0.0.1
……
port: 6379
data:
# Mongodb相关配置
mongodb:
host: 127.0.0.1
port: 27017
database: brecycle
……
# 搭建完FISCO BCOS后需要将nodes下的证书拷贝到项目对应路径中
fisco:
cryptoMaterial:
certPath: "conf"
caCert: "conf/ca.crt"
sslCert: "conf/sdk.crt"
sslKey: "conf/sdk.key"
# FISCO BCOS节点列表
network:
peers:
- "192.168.111.128:20201"
- "192.168.111.128:20200"
……
# WeEvent服务配置
weevent:
# WeEvent服务地址
brokerUrl: "http://192.168.111.128:8091/weevent-broker"
……
point:
……
# 积分合约地址,后端启动后执行初始化合约部署接口后得到,首次启动需要修改此处再重启应用
pointController: "0xbb4ae196c032c53ce856289acb76c36771e8a74e"
需要进行动态调整的配置说明:
- 默认启动端口:server.port
- MySQL链接配置:spring.datasource:url
- Redis链接配置:spring.redis.host/port/database
- MongoDB链接配置:spring.data.mongodb.host/port/database
- Fisco BCOS证书配置和节点列表
- WeEvent服务地址
- 积分合约部署地址
front/.env.serve-dev
# 修改此处为后端服务地址
VITE_APP_PROXY_URL = 'http://localhost:8090/'