qbankserver是一个基于Spring Boot Oauth2的提供用户信息相关接口的服务,该服务依赖于模块oauthserver,无法独立运作。
qbankserver服务主要提供以下用户信息相关接口:
- 登录注册
- 网页端扫码登录(该接口是作为thymelte项目的一部分,详情访问thymelte)
- 用户信息
- 手机验证码
支持的关系型数据库:
- PostgreSQL
- MySQL
已实现的功能:
- 集成阿里大于发送手机验证码功能;
- 集成swagger2,访问http://localhost:8184/swagger-ui.html;
- 封装了oauthserver模块提供的access_token相关的接口;
- 日志记录保存到文件,并按日归档;
- 数据库连接信息加密;
- 集成Druid数据库连接池。
- PostgreSQL
请执行
src/main/resources/schema-pg.sql
,完成数据表的创建和测试数据的导入。 - MySQL
请执行
src/main/resources/schema-mysql.sql
,完成数据表的创建和测试数据的导入。
在application.yml中,配置着数据库的连接信息。其中,配置项username和password是要经过jasypt加密的,不能直接填明文。加密密钥由jasypt.encryptor.password
配置。你需要使用test目录下的UtilTests工具得到加密字符串。
- PostgreSQL
# PostgreSQL连接信息
driver-class-name: org.postgresql.Driver
url: jdbc:postgresql://127.0.0.1:5432/thymelte?useUnicode=true&characterEncoding=UTF-8
username: ENC(hTpbG9fq+7P3SntmXuNtDxbtWDqRuPV+)
password: ENC(abdq6LyOspryFQHCqzEMTxRozyJVjIA4)
- MySQL
# MySQL连接信息
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: ENC(YiYjVwTulDGN//YaB3KbuA==)
password: ENC(9oaIJkFgGSDFaHH3OXY63RHWQ+amDmiJ)
如果你想使用阿里大于验证码功能,首先,你需要把resources/jars
目录下的com
文件夹,复制到本地的maven仓库,因为这两个jar是阿里大于依赖的jar。
然后,你必须配置application.properties
中com.alibaba.dayu
开头的配置项。请保证你的支付宝账号有足够余额,用于支付验证码的发送。
现在,一切已准备就绪。由于本项目依赖于模块oauthserver,所以你需要先按照oauthserver的README.md文档,配置完成oauthserver
,并启动。然后再运行本项目,当程序成功启动时,即表明你已配置成功。
访问http://localhost:8184/swagger-ui.html进行相关接口的测试。