# AgriGoods **Repository Path**: testing-category/agri-goods ## Basic Information - **Project Name**: AgriGoods - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-22 - **Last Updated**: 2026-03-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 农产品供销服务系统 - 用户管理模块 ## 项目简介 这是一个基于 JSP + Servlet + MySQL 架构的农产品供销服务系统,当前已完成**用户管理模块**的开发。 ## 技术栈 - **后端**: Java 8, Servlet 4.0, JSP 2.3 - **前端**: HTML5, CSS3, JavaScript - **数据库**: MySQL 8.0 - **服务器**: Apache Tomcat 9.0+ - **构建工具**: Maven ## 项目结构 ``` src/ ├── main/ │ ├── java/com/zyzan/ │ │ ├── constant/ # 常量定义 │ │ │ └── UserConstant.java │ │ ├── entity/ # 实体类 │ │ │ └── User.java │ │ ├── dao/ # 数据访问层 │ │ │ ├── UserDAO.java │ │ │ └── impl/UserDAOImpl.java │ │ ├── service/ # 业务逻辑层 │ │ │ ├── UserService.java │ │ │ └── impl/UserServiceImpl.java │ │ ├── servlet/ # 控制层 │ │ │ ├── RegisterServlet.java │ │ │ ├── LoginServlet.java │ │ │ ├── LogoutServlet.java │ │ │ ├── FarmerIndexServlet.java │ │ │ ├── BuyerIndexServlet.java │ │ │ └── AdminIndexServlet.java │ │ ├── filter/ # 过滤器 │ │ │ └── AuthFilter.java │ │ └── util/ # 工具类 │ │ └── DBUtil.java │ ├── resources/ │ │ └── db.properties # 数据库配置 │ └── webapp/ │ └── WEB-INF/ │ ├── pages/ # JSP页面 │ │ ├── login.jsp │ │ ├── register.jsp │ │ ├── farmer/index.jsp │ │ ├── buyer/index.jsp │ │ └── admin/index.jsp │ └── web.xml # Web配置 └── database/ └── init.sql # 数据库初始化脚本 ``` ## 功能特性 ### 已实现功能(用户管理模块) #### 1. 用户注册 - 支持农户和采购商注册 - 表单验证(用户名、密码、手机号等) - 农户可填写经营品类和规模 - 用户名重复检测 - 密码确认功能 - **密码MD5加密存储** - **注册后默认待审核状态,需管理员审核通过** #### 2. 用户登录 - 用户名和密码验证(MD5加密比对) - 账号状态检查(正常/禁用/待审核) - **详细的登录失败提示**(区分账号待审核、被禁用、密码错误) - Session会话管理 - 根据角色跳转到不同首页 #### 3. 角色权限控制 - **农户**: 访问 `/farmer/` 路径下的功能 - **采购商**: 访问 `/buyer/` 路径下的功能 - **管理员**: 访问 `/admin/` 路径下的功能 - 权限过滤器(AuthFilter)自动拦截未授权访问 #### 4. 退出登录 - 清除Session - 返回登录页面 #### 5. 三个角色工作台 - 农户工作台:展示农产品管理、订单管理等功能入口 - 采购商工作台:展示农产品浏览、采购需求等功能入口 - 管理员后台:展示用户管理、系统设置等功能入口 #### 6. 管理员用户管理(NEW) - **用户列表查看**:查看所有用户信息 - **多维度筛选**:按状态(正常/待审核/禁用)和角色筛选 - **用户审核**:审核通过或拒绝待审核用户 - **用户状态管理**:启用或禁用用户账号 - **实时操作反馈**:操作成功/失败提示 ## 部署步骤 ### 1. 数据库配置 ```bash # 1. 创建数据库并导入初始数据 mysql -u root -p < database/init.sql # 2. 修改数据库连接配置 # 编辑 src/main/resources/db.properties db.username=root db.password=你的密码 ``` ### 2. 编译打包 ```bash # Maven编译打包 mvn clean package ``` ### 3. 部署到Tomcat ```bash # 将生成的 WAR 包复制到 Tomcat webapps 目录 cp target/untitled1-1.0-SNAPSHOT.war $TOMCAT_HOME/webapps/ # 启动 Tomcat $TOMCAT_HOME/bin/startup.sh # Linux/Mac $TOMCAT_HOME/bin/startup.bat # Windows ``` ### 4. 访问系统 浏览器访问:`http://localhost:8080/untitled1-1.0-SNAPSHOT/` ## 测试账号 系统已预置以下测试账号(密码已MD5加密存储): | 角色 | 用户名 | 密码 | 状态 | 说明 | |------|--------|------|------|------| | 管理员 | admin | 123456 | 正常 | 系统管理员账号 | | 农户 | farmer001 | 123456 | 正常 | 测试农户账号 | | 采购商 | buyer001 | 123456 | 正常 | 测试采购商账号 | | 农户 | farmer_pending | 123456 | 待审核 | 用于测试审核功能 | ## 数据库设计 ### t_user(用户表) | 字段名 | 类型 | 说明 | |--------|------|------| | user_id | INT | 用户ID(主键) | | username | VARCHAR(50) | 登录账号(唯一) | | password | VARCHAR(100) | 登录密码(MD5加密,32位小写) | | real_name | VARCHAR(50) | 真实姓名 | | phone | VARCHAR(20) | 联系电话 | | role | VARCHAR(20) | 角色:farmer-农户/buyer-采购商/admin-管理员 | | province | VARCHAR(50) | 省份 | | city | VARCHAR(50) | 城市 | | district | VARCHAR(50) | 区县 | | address | VARCHAR(200) | 详细地址 | | business_type | VARCHAR(100) | 经营品类(农户专用) | | business_scale | VARCHAR(50) | 经营规模(农户专用) | | status | VARCHAR(20) | 状态:active-正常/inactive-禁用/pending-待审核 | | create_time | DATETIME | 注册时间 | | update_time | DATETIME | 更新时间 | ## 后续开发计划 - [ ] 模块2:农产品信息管理模块 - [ ] 模块3:订单与交易管理模块 - [ ] 模块4:供需匹配与服务模块 - [ ] 模块5:物流与配送模块 - [ ] 模块6:数据统计与报表模块 ## 注意事项 1. 数据库密码默认为 `root`,请根据实际情况修改 `db.properties` 2. 确保 MySQL 服务已启动 3. 确保 Tomcat 版本 >= 9.0 4. 项目编码统一使用 UTF-8 5. 浏览器推荐使用 Chrome 或 Firefox ## 开发者 - 项目名称:农产品供销服务系统 - 开发者:zyzan - 开发时间:2025