通用类的抽取
一.Dao层抽取
在Dao的接口包里,添加一个叫IBaseDao的接口IDepDao里的所有方法,都复制到IBaseDao里去IBaseDao上加上泛型支持 IBaseDao<T>替换所有的Dep为大写的T, dep替换为t , 快捷键ctrl + f修改IDepDao , 创建BaseDao,复制DepDao里的方法到BaseDao里去 , 替换所有的Dep为大写的T, dep替换为t发现报错 , T.class
解决: 定义entityClass属性 把T.class替换为entityClass
添加无参构造方法,在构造方法里实现这个entityClass的具体类型
二.Biz层抽取
创建IBaseBiz<T>接口把IDepBiz里的方法,复制到IBaseBiz里替换Dep为T,dep为t改造IDepBiz,删除其下所有的方法,继承IBaseBiz<Dep>创建BaseBiz实现类复制DepBiz里的方法到BaseBiz里替换DepDao为BaseDao,depDao替换成baseDao替换Dep为T, dep为tDepBiz改造一下
三.Action层抽取
创建BaseAction,将DepAction里的所有方法复制过来替换DepBiz为BaseBiz, depBiz为baseBiz替换Dep为T, dep为tDepAction改造一下
四.前端抽取
JS抽取创建crud.js文件把dep.html里的js内容都复制到crud.jsDep.html里先定义 name="dep" , columns=[] ; 因为他们是具体某个实体类的私有内容替换 'dep_ 为 name+'_Dep.html修改 dep 改为 t
五.员工管理的完善
查询页面,不显示密码性别显示, 在emp.html的 columns中,field的gender中,加上格式化器日期格式化 - - 引入date.js文件 - - 添加格式化器显示部门:
配置映射文件 many-to-one修改Emp.java实体类 创建dep对象,因为是多对一, private Dep dep; 提供getter setter方法给部门加上格式化器部分部门名称没有显示, fastJSON使用了循环引用 所以需要禁用这一功能, listByPage, list一起修改
六.员工数据编辑
性别输入改为单选按钮日期输入控件, class="easyui-datebox" , editable="false"是不可编辑部门下拉列表