# MiniProgram-server-JAVA
这里是NCOV 2020疫情防控-人员健康管理平台开源项目的小程序后端--Java版本。
主项目入口 >> https://github.com/2020NCOV/ncov-report
**数据库表结构与主项目保持一致**
数据库文件位置 >> https://github.com/2020NCOV/ncov-report/tree/master/database
commit前如何与上游仓库同步?>> [本地及远程仓库如何与上游仓库保持一致](https://github.com/msq0313/MiniProgram-server-JAVA/blob/master/Git_tour.md)
## 项目导航
[MiniProgram-server-JAVA](#MiniProgram-server-JAVA)
- [项目导航](#项目导航)
- [项目结构](#项目结构)
- [本地配置](#本地配置)
## 项目结构
#### (1)代码层的结构
##### 根目录:src/main/java/miniprogram/server
1.工程启动类(ServerApplication.java)置于miniprogram.server
2.实体类(Beans)置于miniprogram.server.beans
3.数据访问层(Mapper)置于miniprogram.server.mapper
4.数据服务层(Service)置于miniprogram.server.service
5.前端控制器(Controller)置于miniprogram.server.controller
6.工具类(utils)置于miniprogram.server.utils
7.常量接口类(constant)置于miniprogram.server.constant
8.配置信息类(config)置于miniprogram.server.config
9.数据传输类(vo)置于miniprogram.server.vo
#### (2)资源文件的结构
##### 根目录:src/main/resources
1.配置文件(.yaml/.json等)置于config文件夹下
2.国际化(i18n))置于i18n文件夹下
3.spring.xml置于META-INF/spring文件夹下
4.页面以及js/css/image等置于static文件夹下的各自文件下
## 本地配置
### 1.导入IDEA
IDE根据pom.xml自动导入依赖
### 2.修改配置文件
src/main/resources/application.properties
~~~
# 根据项目情况修改
# 配置api端口号
server.port=8080
# 连接数据库
spring.datasource.url=jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
spring.datasource.username=数据库用户名名
spring.datasource.password=数据库密码
~~~
### 3.配置小程序参数
src/main/resources/application.properties
~~~
APPID = 自己的小程序appid(注意没有双引号)
SECRET = 自己的小程序secret(注意没有双引号)
~~~
### 4.运行ServerApplication
浏览器中输入http://localhost:8080/index
可返回 MiniProgram-server-JAVA 即成功运行
### 5.小程序联调
打开小程序开发工具,导入项目
小程序项目地址:https://github.com/2020NCOV/ncov-report-mini-program-server
修改小程序端的baseURL,在/ncov-report-mini-program/util/config.js文件中
~~~
const baseURL = 'http://127.0.0.1:8080/index'; //这表示小程序访问的是本机的8080端口,正是后端程序监听的端口
~~~
- 编译运行小程序
- 打开调试器,点击network
- 查看小程序发出的请求getcode,如果返回status code是200ok则表示前后端通信成功,并可查看response内容
- 可正常进行注册登录,解绑信息等操作。
**项目已经可以正常运行,但存在bug,且各接口仍需完善(如安全性问题),欢迎朋友们共同参与开发!**
健康上报小程序后端服务程序(Java版).zip
需积分: 0 95 浏览量
更新于2024-03-03
收藏 145KB ZIP 举报
健康上报小程序后端服务程序(Java版)是一个用于收集、管理和处理用户健康数据的应用程序。在这款Java实现的后端服务中,我们可以发现它主要关注以下几个核心知识点:
1. **Web服务框架**:通常,Java后端开发会使用Spring Boot框架,这是一个广泛应用于构建微服务的框架。Spring Boot简化了初始化和配置过程,提供了自动配置和一站式的解决方案。
2. **RESTful API设计**:健康上报小程序的后端服务很可能是通过HTTP协议与前端进行交互,采用REST(Representational State Transfer)架构风格设计API。这意味着接口应该是无状态的,通过HTTP方法(GET、POST、PUT、DELETE等)来执行CRUD操作。
3. **数据库交互**:为了存储用户健康数据,后端服务需要与数据库进行交互。可能使用JPA(Java Persistence API)或者MyBatis这样的ORM(对象关系映射)框架来操作MySQL、PostgreSQL等关系型数据库。
4. **JSON处理**:后端与前端之间的数据交换通常以JSON格式进行,因此需要使用如Jackson或Gson这样的库来序列化和反序列化JSON对象。
5. **安全与认证**:为了保护用户数据的安全,后端可能实现了OAuth2或JWT(JSON Web Tokens)进行身份验证和授权。这确保只有经过验证的用户才能访问和提交健康数据。
6. **错误处理与日志记录**:为了跟踪和调试服务中的问题,项目可能集成了Logback或Log4j这样的日志框架,并使用Spring的异常处理机制来提供统一的错误响应。
7. **单元测试与集成测试**:为确保代码质量,开发者可能使用JUnit、Mockito等工具编写了单元测试和集成测试,对关键业务逻辑进行验证。
8. **持续集成/持续部署(CI/CD)**:项目很可能采用了GitHub或GitLab等版本控制工具,并结合Jenkins或Travis CI等工具实现自动化构建和部署,以提升开发效率和产品质量。
9. **数据验证**:在接收和处理用户输入时,可能会用到Bean Validation或自定义校验逻辑,确保提交的数据有效且符合规范。
10. **并发处理**:考虑到可能存在大量用户同时上报数据,后端服务需要有效地处理并发请求,可能利用Spring的线程池或Java的并发库来提高系统性能。
11. **分布式缓存**:为了优化高访问量场景下的性能,可能会使用Redis作为缓存存储,快速响应频繁查询的数据。
12. **数据库优化**:可能通过索引优化、读写分离、分库分表等手段,提高数据库的读写效率。
通过分析这个压缩包内的"MiniProgram-server-JAVA-master"文件,我们可以深入研究上述技术的应用,学习如何构建一个健壮、高效且安全的健康上报小程序后端服务。

日刷百题
- 粉丝: 6846
最新资源
- 如何学习好单片机编程设计方案.doc
- 互联网+背景下体育人文素养对大学生创业能力的影响.docx
- 如何使用AutoCAD的工具选项板.docx
- 对互联网+专业护理资源介入安康市养老事业发展的探索.docx
- 教育信息化管理的问题及解决对策.docx
- 第二章变电站综合自动化系统的间隔层装置.doc
- 区块链技术对于深化会计电算化的前景分析.docx
- 计算机竞赛题大全.docx
- myeclipse连接数据库建立web工程简单测试访问成功例子.doc
- VxWorks嵌入式数据库管理系统设计方案.doc
- 企业网络管理和业务调度自动化设计方案.docx
- “教学中的互联网搜索”《记金华的双龙洞》教案设计思路.doc
- 基于 IMDB 情感分析数据集运用 LSTM 结合预训练词典向量模型开展电影评论情感分类研究
- 交通指挥灯PLC控制系统方案设计书.doc
- 浅析大数据时代电力企业档案的开发利用.docx
- 项目管理之需求识别和项目识别.docx