JavaWeb项目练习(一)——客户信息管理系统

一、项目介绍

1.1. 功能介绍

添加客户:添加客户信息,其中包括姓名、性别、手机、邮箱和自我描述

查询客户:查询数据库中的所有客户信息,查询结果以列表分页形式展示,可以对展示列表的客户信息进行编辑和删除

高级搜索:可根据客户信息模糊搜索,搜索的结果以列表分页形式展示,可对展示列表的客户信息进行编辑和删除

1.2. 运用知识

*数据库基本增、删、改、查sql语句

*数据库连接池c3p0

*commons-dbutils工具类库(1.运用dbutils.jar包封装表单数据到bean对象中 2.利用dbutils.jar包简化对数据库的增、删、改、查的代码)

*jsp标签库

*反射

*JavaWeb三成分离框架(MVC)

二、准备

2.1.需要导入的jar包

* c3p0.jar

* servlet-api.jar

* mchange-commons.java.jar

* commons-beanutils.jar

* commons-collections.jar

* commons-dbutils.jar

* commons-logging.jar

* jstl.jar

* mysql-connector-java.jar

*自己写的工具包:my-tools.jar

2.2.建包

*dao

*demo

*domain

*servic

*servlet

2.3.建表

三、搭建环境

* Eclipse+MySQL

4.1. 主页

4.2. 添加客户

4.3. 查询客户

4.4. 高级搜索

五、各包功能模块分析

5.1. 自己写的jar工具包:my-tools.jar

该jar工具包下有三个包,分别为:

* cn.my.commons

* cn.my.jdbc

* cn.my.servlet

接下来对这三个包的功能分别做详细介绍。

5.1.1. cn.my.comons 包

该包下有两个类:

CommonUtils.java :主要实现两个功能,1.对客户信息提供唯一ID识别号; 2.将request中的表单数据转化为客户信息对象。

DataConverter.java:是 String转化为java.tuil.Date类型的转化器,用于上个类中转化器的注册。

5.1.2. cn.my.jdbc 包

该包下有两个类:

JdbcUtils.java:主要用来获取 数据库连接以及 事务的开启,关闭,回滚功能。

MyQueryRunner.java:主要对commons.dbutils.QueryRunner类进行封装,重写了其增删改查方法,隐藏了数据库连接,让用户无需再考虑事务完整性问题。

5.1.3 cn.my.servlet包

该包下有两个类:

GetRequest.java:对GET请求参数加以处理,将获取参数的编码更改为”utf-8“类型编码。

5.2. domain 包

该包主要用于映射数据库中客户信息封装成对象以及封装页面对象,属于模型层。该包主要有两个类:

Customer.java:映射数据库中客户信息,封装成客户对象。

PageBean.java:封装页面对象(实现列表分页功能准备)。

5.3. dao包

该包下有一个类:

CustomerDao.java:根据用户信息对数据库进行增删改查操作进行封装。

5.4. service包

该包属于控制层,包含一个类:

CustomerService.java:对CustomerDao方法进行调用,起到CustomerServlet与CustomerDao之间的桥梁作用。

5.5. servlet包

该包下包含一个类:

CustomerServlet1:继承BaseServlet类,实现request中method参数对应各种值的方法。

经验分享 程序员 微信小程序 职场和发展