crm项目总结

 

目录

1.实现客户列表(带有搜索功能的客户列表)

2.实现客户新增(带有数据字典)


1.实现客户列表(带有搜索功能的客户列表)

list.jsp  ->-  点击筛选

页面输出:

  1. 查询条件
  2. 当前页数
  3. 每页显示条数

后台向页面输入(PageBean):

  1. 客户列表(dao)
  2. 当前页数(前台传入)
  3. 总记录数(dao)
  4. 每条显示页数(前台传入)
  5. 总页数(封装PageBean时根据3和4计算)
  •  CustomerAction  :
  1. 封装离线查询对象
  2. 调用Service分页
  3. 将分页数据放入request域内
  4. struts跳转显示页面
  •   CustomerService:
  1. 调用Dao获取总记录数
  2. 封装PageBean(包含起始索引,分页列表等)
  3. 调用Dao的分页功能(参数:离线查询对象,起始索引,每页显示条数)
  4. 返回PageBean
  •   BaseDao:BaseDao为CustomerDao,LinkManDao,UserDao抽取得到的,将增删改查分页等功能抽取到BaseDao接口中,在BaseDaoImpl中实现,那么以后再实现Dao时只需要继承通用接口的实现即可。此处有反射代码:
private Class clazz;// 用于接受运行期间泛型类型

	public BaseDaoImpl() {
		// 获得当前类型的带有泛型类型的父类
		ParameterizedType ptClass = (ParameterizedType) this.getClass().getGenericSuperclass();
		// 获得运行期间的泛型类型
		clazz = (Class) ptClass.getActualTypeArguments()[0];
	}
  • 前台list页面
  1. PageBean数据显示
  2. 隐藏域内放置当前页数和每页显示条数(value为与PageBean对象对应的属性)
  3. 书写翻页(跳页)js函数:①将跳页之后的页码放入隐藏域中;②表单提交
  4. 书写改变页面显示条数的js函数:①将改变后的每页显示条数放入隐藏域;②表单提交

2.实现客户新增(带有数据字典)

ajax实现三个客户属性的下拉选(查找数据字典)

技术难点:

  1. 页面内js函数的参数
  2. 数据的回显

实现:

  1. JQuery页面加载完成时间内书写加载下拉选的函数,参数包括:①数据字典类型;②将下拉选放入的标签i的d;③生成下拉选时,select标签的name属性值(struts提交时封装到Customer对象);④需要回显时,选中哪个option;
  2. 下拉选js函数内创建select对象,追加拼写html语句(①<select />;②提示选项<option value=‘-请选择--’/>  );
  3. 书写JQuery的ajax函数,访问数据字典Action,获得Json;
  4. 遍历Json:①拼装<option>;②判断是否为参数4,若是,增加选中属性;
  5. 将拼装后的语句放入参数2。
  • 数据字典Action
  1. 数据字典Service
  2. json串转换
  • 数据字典Service  -->  数据字典Dao
  1. 根据数据字典类型查询数据库
  2. 返回list数据

客户保存(修改)

  • CustomerAction(跳转list显示页面)  -->  CustomerService  -->  BaseDao的saveorupdate方法

文件上传(Struts2)


未完,更新中。。。

 

 

项目地址:https://github.com/HankOne/ssh_crm.git

全部评论

相关推荐

爱看电影的杨桃allin春招:我感觉你在炫耀
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务