微服务+微信小程序实现社区服务

前言

我在上大学的时候毕业设计做的是微服务​​SpringCloud​​结合微信小程序实现一个提供一些生活服务的微信小程序,它主要可以提供豆瓣电影资讯、热点新闻、天气预报、停车位预约等生活服务,也用到了一些分布式的技术比如消息队列、内存数据库等。

正文

微服务+微信小程序实现社区服务

​源码文件​​的结构

  • springcloidservice:以​​SpringCloud​​架构的后台服务项目
  • 社区服务:微信小程序的源码
  • comdc.sql : ​​mysql​​数据库数据脚本

这里简单介绍一下springcloud-service的结构:

  • springcloud-eureka-client-draghook:拉钩活动模块,可以理解为一个朋友圈的功能。
  • springcloud-eureka-client-notice:公告栏模块,提供热点新闻、社区文件管理、社区公告栏、社区意见箱的功能。
  • springcloud-eureka-client-park:停车场模块,可以搜索附近的停车场,进行车位预约。
  • springcloud-eureka-client-user:用户模块,提供用户信息管理等功能。
  • springcloud-eureka-client-gateway:微服务的路由层。
  • springcloud-eureka-client-server:服务的​​Eureka​​注册中心。
  • springcloud-eureka-service-biz:项目的​​service​​层。
  • springcloud-eureka-service-common:项目的工具类层。
  • springcloud-eureka-service-dao:项目的​​dao​​层。

微服务+微信小程序实现社区服务_毕业设计

项目中使用到的技术栈

  • SpringCloud:分布式微服框架
  • SpringSecurity:基于角色的权限管理
  • RabbitMq:分布式消息队列
  • Quartz:定时调度器
  • Redis:内存数据库
  • Knife4j:在线接口调试工具
  • Solr: 企业级搜索应用服务器

项目中的技术点

  • SpringBoot使用RabbitMQ:详情可参考我的博客,​​SpringBoot使用RabbitMQ​​
  • SpringBoot使用Spring Security实现权限管理:详情可参考我的博客,​​SpringBoot使用SpringSecurity实现权限管理​​
  • SpringCloud使用Eureka作为服务治理中心:详情可参考我的博客,​​SpringCloud使用Eureka作为服务治理中心​​
  • 微服务使用knife4j进行在线接口调试:详情可参考我的博客,​​微服务使用knife4j进行在线接口调试​​
  • SpringBoot使用Solr实现检索:详情可参考我的博客,​​SpringBoot使用Solr实现检索​​
  • SpringBoot通过自定义注解实现日志打印:详情可参考我的博客,​​SpringBoot通过自定义注解实现日志打印​​
  • Java使用自定义注解优雅地解决异常:详情可参考我的博客,​​Java使用自定义注解优雅地解决异常​​

将微服务后台与微信小程序关联起来,需修改小程序app.json​​

微服务+微信小程序实现社区服务_毕业设计_02

展示部分功能页面

朋友圈模块

微服务+微信小程序实现社区服务_分布式_03

停车服务模块

  • 这里要注意如果没有搜到停车场,需要在数据库中修改停车场的经纬度,这里只展示20km内的停车场

微服务+微信小程序实现社区服务_社区服务_04

社区意见箱模块

微服务+微信小程序实现社区服务_微信小程序_05

其他模块

微服务+微信小程序实现社区服务_微信小程序_06

源码

项目源码可从的我的​​github​​​中获取:​​github源码地址​

微服务+微信小程序实现社区服务_社区服务_07