【CRM(四)】联系人管理

CRM综合练习_联系人管理

保存联系人

修改menu.jsp的链接

在这里插入图片描述

编写Action中的saveUI的方法

在这里插入图片描述

编写Service

在这里插入图片描述

编写DAO

在这里插入图片描述

修改添加页面(改成struts2的标签)

编写表单提交路径

在这里插入图片描述

编写Action的save方法

在这里插入图片描述

编写Service

在这里插入图片描述

编写DAO

在这里插入图片描述

修改联系人

修改列表页面上链接

在这里插入图片描述

编写Action的edit方法

在这里插入图片描述

编写Service

在这里插入图片描述

编写DAO

在这里插入图片描述

修改编辑页面提交的路径

在这里插入图片描述

编写Action的update方法

在这里插入图片描述

编写Service

在这里插入图片描述

编写DAO

在这里插入图片描述

删除联系人

修改链接地址

在这里插入图片描述

编写Action中的delete方法

在这里插入图片描述

编写Service

在这里插入图片描述

编写DAO

在这里插入图片描述

条件查询联系人

修改列表页面

在这里插入图片描述

修改Action中findAll的方法

在这里插入图片描述

解决与客户之间问题

级联删除的问题

  • 级联删除,在客户删除的时候,先查询再删除
  • 在客户的映射删进行配置
    在这里插入图片描述

修改客户的时候,联系人的客户的信息就丢失了

  • 因为在修改客户的时候,没有查询联系人的集合,当点击修改,修改客户(修改客户所关联联系人)因为联系人的集合是空,所以将外键置为null。
    在这里插入图片描述

CRM综合练习_抽取通用的DAO

通用的DAO的抽取

在这里插入图片描述

抽取通用的增删改的操作

  • 定义接口
    在这里插入图片描述
  • 定义实现类
    在这里插入图片描述

抽取一个查询一个的方法

  • 在接口中定义了一个查询的方法
    在这里插入图片描述
  • 在实现类中实现查询的方法
    在这里插入图片描述
    如果能把具体的类型的Class解决,查询所有,分页查询都可以解决!!!

解决方案一:在实现类的构造方法中传入一个Class

  • 编写实现类
    在这里插入图片描述
    在父类中提供了有参数的构造方法,在子类中继承了父类,提供构造方法,在子类的构造中,调用父类的有参数的构造。
  • 在客户的DAO的实现类中
    在这里插入图片描述
  • 在联系人的DAO的实现类中
    在这里插入图片描述
  • 有了以上这些内容,将查询的所有的方法,都抽取
    • 接口
      在这里插入图片描述
    • 实现类
      在这里插入图片描述
      如果这样抽取完成以后,那么在编写DAO的时候如果里面都是一些CRUD的操作,在DAO中只需要提供构造方法即可。
  • 客户的DAO
    在这里插入图片描述
  • 联系人的DAO
    在这里插入图片描述
    如果将通用的DAO编写的更好,连构造方法都不想要了!!!需要怎么做???
  • 泛型反射

解决方案二:通过泛型的反射抽取通用的DAO

  • 如果现在将DAO中的构造方法去掉,将父类的通用的DAO中提供无参数的构造即可,但是需要在无参数的构造中需要获得具体类型的Class才可以-----涉及到泛型的反射了。
  • 回顾一下泛型:
    • 泛型 :通用的类型。
    • <> :念为 typeof
    • List:E称为类型参数变量
    • ArrayList :Integer称为是实际类型参数
    • ArrayList :ArrayList称为参数化类型
  • 需要做的事情在父类的构造方法中获得子类继承父类上的参数化类型中的实际类型参数
  • 泛型反射的步骤:
    • 第一步:获得代表子类对象的Class
    • 第二步:查看API
      在这里插入图片描述
      • Type[] getGenericInterfaces(); :获得带有泛型的接口,可以实现多个接口。
      • Type getGenericSuperclass(); :获得带有泛型的父类,继承一个类。
    • 第三步:获得带有泛型的父类
    • 第四步:将带有泛型的父类的类型转成具体参数化的类型
    • 第五步:通过参数化类型的方法获得实际类型参数
  • 代码实现
    在这里插入图片描述
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
源代码见:http://download.csdn.net/source/3026894 本程序于2008年5月采用VB6.0+access编写完成,为帮弟弟做毕业设计而完成的,同时自己使用的1年多,发现非常实用,现在决定上传网上与大家共共享。先上传可执行程序,欢迎大家使用,如有意见请发邮件到 shumo04@163.com 下面是程序功能的简单介绍。 “联系人信息管理系统”力求更加精简和全面的联系人(亲戚、同学、朋友等)的信息,方便用户整理与存储联系人的信息、查询联系人信息以及查询满足某些特征要求的联系人,提高效率。另外,存储用户曾经和朋友一起参与的活动的时间、地点、重要经历等;以及朋友们的一些重要经历,帮助用户记忆信息,从而在有需要时用户能够方便的寻求适当的朋友、同学等联系人的帮助。最后,如果时间允许还增加重要事情提醒功能,如朋友生日,提示很久没联系的同学信息等,从而使用户能够建立良好的人际关系。实现了从Excel读取联系人信息以及将联系人主要信息保存到Excel文件。 功能模块: 1,联系人信息 1.1 新增联系人 1.2 批量增加联系人(Excel导入) 1.3 联系人信息修改 1.4 联系人分组信息管理 2, 联系人经历 2.1 新增求学经历 2.2 新增工作经历 2.3 新增活动经历 2.4 修改活动经历 3, 查询 3.1 联系人基本信息查询 3.2 活动经历查询 3.3 综合查询 3.4 联系人信息输出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值