# 宠物日记 **Repository Path**: cxy63336/mypet ## Basic Information - **Project Name**: 宠物日记 - **Description**: 一个用于记录宠物饲养的小程序,还能分享自己与宠物的动态 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-17 - **Last Updated**: 2026-01-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 宠物日记 ## 1. 项目简介 这是一个基于 **Spring Boot** 后端和 **微信小程序** 前端的完整全栈应用。项目旨在帮助宠物主人记录宠物的日常(如体重变化、成长事件),并提供社交功能,让用户可以分享与宠物的动态,点赞、评论、收藏,以及关注其他宠物主人。 项目同时包含一个基于 **JSP/Servlet** 的后台管理系统,用于管理员对用户、博客和评论进行管理。 ![输入图片说明](https://moyan-1258902887.cos.ap-guangzhou.myqcloud.com/bishe/mypet/page1.jpg) ![输入图片说明](https://moyan-1258902887.cos.ap-guangzhou.myqcloud.com/bishe/mypet/page2.jpg) ## 2. 功能特性 ### C端(小程序)功能 * **宠物档案管理**:添加宠物基本信息(品种、性别、生日等),记录体重数据并支持图表展示。 * **成长事件**:记录宠物成长中的重要时刻(疫苗、驱虫等)。 * **动态分享**:发布图文博客,支持点赞、收藏、评论。 * **社交互动**:关注/取消关注其他用户,浏览关注人的动态流。 * **用户中心**:编辑个人资料,管理我的博客、收藏和评论。 ### 管理端功能 * **用户管理**:查看用户列表,禁用/启用用户。 * **博客管理**:审核博客,删除违规内容。 * **评论管理**:管理博客下的评论。 * **系统管理员**:新增管理员账号,修改个人信息。 ## 3. 技术栈 ### 后端 (api-server) * **核心框架**:Spring Boot 2.x * **持久层**:MyBatis * **数据库**:MySQL * **安全认证**:JWT (JSON Web Token) * **构建工具**:Maven * **前端模板**:JSP + JSTL + Bootstrap (H-ui.admin) ### 前端 (wxmp) * **平台**:微信小程序 (Native) * **图表库**:wxCharts (用于体重趋势展示) ## 4. 项目结构 ```text mypet/ ├── api-server/ # 后端服务代码 │ ├── src/main/java/com/mypet/ │ │ ├── controller/ # 控制器层 (API接口 & 页面控制器) │ │ ├── dao/ # 数据访问层 (Mapper接口 & 实体) │ │ ├── service/ # 业务逻辑层 │ │ ├── utils/ # 工具类 │ │ └── author/ # 权限与认证相关 (JWT, 拦截器) │ ├── src/main/resources/ │ │ ├── application.properties # 配置文件 │ │ └── mapper/ # MyBatis XML 映射文件 │ ├── src/main/webapp/ # Web资源 (JSP, CSS, JS) │ └── src/data/ # 数据库初始化脚本 │ └── mypet.sql └── wxmp/ # 微信小程序源码 ├── pages/ # 页面逻辑 ├── components/ # 组件 ├── images/ # 静态图片 └── utils/ # 工具函数与请求封装 ``` ## 5. 快速部署 ### 5.1 环境要求 * JDK 1.8+ * MySQL 5.7+ * Maven 3.x * 微信开发者工具 ### 5.2 数据库配置 1. 登录 MySQL 数据库。 2. 创建数据库(例如:`CREATE DATABASE mypet DEFAULT CHARACTER SET utf8mb4;`)。 3. 导入初始化脚本。脚本位于: `api-server/src/data/mypet.sql` ### 5.3 后端配置与启动 1. 打开文件:`api-server/src/main/resources/application.properties`。 2. 修改数据库连接配置: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/mypet spring.datasource.username=your_username spring.datasource.password=your_password ``` 3. 配置微信登录参数(在对应配置项中填入小程序 AppID 和 Secret): ```properties wx.appid=your_appid wx.secret=your_secret ``` 4. 配置 JWT 密钥(可选): ```properties config.jwt.secret=your_jwt_secret_key config.jwt.expire=86400 ``` 5. **打包与运行**: ```bash cd api-server mvn clean package -DskipTests java -jar target/api-server-版本号.war # 或者部署到 Tomcat 服务器 ``` ### 5.4 微信小程序配置 1. 打开 `wxmp/utils/util.js` 或 `wxmp/app.js`。 2. 配置请求的**后端服务器地址** (Base URL),确保小程序能够访问到上述启动的后端服务。 3. 使用微信开发者工具导入 `wxmp` 目录。 4. 在微信公众平台设置合法请求域名。 ## 6. API 接口简述 项目主要提供以下 RESTful API 风格接口: * `/api/user/login`: 微信登录获取 Token。 * `/api/pet/*`: 宠物相关接口(列表、详情、事件、体重)。 * `/api/blog/*`: 博客相关接口(发布、列表、点赞、评论)。 * `/api/db/*`: 宠物百科数据接口。 > **注意**:部分接口(如发布、点赞)需要在 Header 中携带 JWT Token(键名默认为 `token`),由 `TokenInterceptor` 进行校验。 ## 7. 许可证 本项目遵循开源协议,具体信息请查阅项目根目录下的 LICENSE 文件。