# 宁夏智慧养殖监管平台 - Java后端 这是宁夏智慧养殖监管平台的Java微服务版本后端实现,使用Spring Boot框架构建。 ## 技术栈 - **Java版本**: Java 17 - **框架**: Spring Boot 3.1.0 - **安全框架**: Spring Security - **数据库**: MySQL 8.0+ - **ORM框架**: Spring Data JPA (Hibernate) - **API文档**: Springdoc OpenAPI (Swagger 3) - **认证**: JWT (JSON Web Tokens) - **密码加密**: BCrypt - **构建工具**: Maven - **服务器端口**: 5350 ## 项目结构 ``` backend-java/ ├── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/nxxmdata/farmmonitor/ │ │ │ ├── Application.java # 应用启动类 │ │ │ ├── config/ # 配置类 │ │ │ ├── controller/ # 控制器层 │ │ │ ├── service/ # 服务层 │ │ │ ├── repository/ # 数据访问层 │ │ │ ├── model/ # 数据模型 │ │ │ ├── dto/ # 数据传输对象 │ │ │ ├── security/ # 安全相关 │ │ │ └── exception/ # 异常处理 │ │ └── resources/ │ │ ├── application.yml # 应用配置 │ │ └── application-dev.yml # 开发环境配置 │ └── test/ # 测试代码 ├── pom.xml # Maven配置文件 └── README.md # 项目说明文档 ``` ## 功能模块 1. **用户认证模块** - 用户登录/注册 - JWT Token生成与验证 - 密码加密存储 2. **用户管理模块** - 用户信息管理 - 角色权限管理 3. **农场管理模块** - 农场信息管理 - 地理位置信息处理 4. **设备监控模块** - 设备状态监控 - 传感器数据处理 5. **动物管理模块** - 动物档案管理 - 健康状态跟踪 6. **预警管理模块** - 系统告警处理 - 告警规则配置 7. **订单管理模块** - 产品销售管理 - 订单处理流程 8. **统计分析模块** - 数据统计分析 - 报表生成 ## API文档 启动服务后,可通过以下地址访问API文档: - Swagger UI: http://localhost:5350/swagger-ui.html - OpenAPI JSON: http://localhost:5350/v3/api-docs ## 数据库配置 在 `application.yml` 文件中配置数据库连接: ```yaml spring: datasource: url: jdbc:mysql://192.168.0.240:3307/nxxmdata?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: aiot$Aiot123 driver-class-name: com.mysql.cj.jdbc.Driver ``` ## 快速开始 ### 环境要求 - Java 17+ - Maven 3.6+ - MySQL 8.0+ ### 构建项目 ```bash mvn clean package ``` ### 运行项目 ```bash mvn spring-boot:run ``` 或者 ```bash java -jar target/farm-monitor-1.0.0.jar ``` ## 开发规范 1. 遵循RESTful API设计规范 2. 使用JWT进行无状态认证 3. 密码使用BCrypt加密存储 4. 代码注释规范清晰 5. API文档完整 ## 安全设计 1. 使用JWT Token进行身份验证 2. 密码使用BCrypt加密存储 3. 基于角色的访问控制(RBAC) 4. SQL注入防护(使用JPA) 5. XSS防护(前端处理) ## 性能优化 1. 数据库连接池配置 2. Hibernate二级缓存(可选) 3. API响应时间监控 4. 数据库查询优化 --- *最后更新: 2025年9月*