该项目采用经典三层架构,分别为web层、service层和dao层,各层级功能如下:

1. Web 层

  • Servlet: 前端控制器,负责处理用户请求和响应。
  • HTML: 前端页面,采用前后端分离架构,不使用 JSP。
  • Filter: 过滤器,用于拦截请求和响应,实现权限控制、日志记录等功能。
  • BeanUtils: 数据封装工具,简化数据操作。
  • Jackson: JSON 序列化工具,用于前后端数据传输。

2. Service 层

  • JavaMail: Java 邮件工具,用于发送邮件通知。
  • Redis: NoSQL 内存数据库,用于缓存数据,提高系统性能。
  • Jedis: Java 的 Redis 客户端,用于连接和操作 Redis 数据库。

3. Dao 层

  • MySQL: 关系型数据库,用于存储项目数据。
  • Druid: 数据库连接池,用于管理数据库连接,提高数据库访问效率。
  • Spring Jdbc Template: 数据库连接工具,简化数据库操作。

数据库设计

CREATE DATABASE travel; -- 创建数据库
USE travel; -- 使用数据库
-- 其它建表 SQL