1 “技术”选型

  • 没有业务层,直接由Servlet 调用 Dao , 所以也没有事务操作
    所以可以在 Dao 中直接获取 Connection对象

  • 采用 MVC 设计模式

  • 使用 dao技术

    • mvc设计模式: JSP、Servlet 、 POJO
    • 数据库使用 MySQL
    • 连接数据库需要使用 C3P0 数据库连接池
    • JDBC 工具采用 DBUtils
    • 页面上的提示操作使用 jQuery
  • 技术难点

    • 多个请求如何使用 Servlet?
    • 模糊查询
    • 在创建或修改的情况下,验证用户名是否已经被使用,并给出提示信息

2 需求

  • View : JSP
    1. 呈现数据
    2. 接收用户的输入
    3. 编写 js 代码给出对应的提示
  • Controller : Servlet
    1. 获取请求信息:获取请求参数
    2. 验证请求参数的合法性:验证失败,需要返回界面,并给出提示信息
    3. 把请求参数封装为一个 javaBean
    4. 调用 DAO 方法
    5. 相应页面
  • Model : DAO
    1. 获取数据
      库连接
    2. 执行CRUD
      操作
    3. 返回结果

注意:
1. 不能跨层访问
2. 只能上向下依赖
而<mark>不能</mark>自下向上依赖


3 数据表


4 DAO 层

  • 加入c3p0 数据源
  • 编写 DAO 、 JdbcUtils 工具类 和 CustomerDao 接口
  • 提供 CustomerDAO 接口的实现类:CustomerDAOJDBCImpl

接口

DAO - dbutils



JdbcUtils 工具类 - c3p0


Customer 封装

CustomerDAO

实现

CustomerDaoImp extends DAO<Customer> implements CustomerDAO