版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、java_java语实现基本的增删改查(快到起飞)1.模板模式介绍上有很多的模板模式的介绍,既然是我的笔记,然要写点关于我的理解。其实关于模板模式,我国古代的时候就有过这样的例-北宋庆历间(1041年-1048年)中国的毕昇发明了个活字印刷术。,从那会那开始,模板就成为了我们活中不可或缺的部分。回到正题,既然是模板模式,就是要将代码中重复率较的的那段代码给抽象出来,然后要使这部分抽象出来的代码就可以直接继承或者是实现这部分抽象出来的代码即可。下以常的增删改查应下这个模板模式的设计模式(可以提写代码的效率)。2.MVC架构中抽象出增删改查这使ssm架构来实现。2.1 抽象Dao层模板般来说dao
2、是个个接,每个接对应着个mapper类,那么这每个mapper就有可能增删改查,想象下,要是整个项多达70,80多张甚是100多张的时候,这个时候就显出了模板模式的优势了,它可以让你少写很多的代码,提写代码的速度。下来将dao层的基本的增删改查都抽象出来:public interface TempleteDao int deleteByPrimaryKey(Integer id);int insert(T record);int insertSelective(T record);T selectByPrimaryKey(Integer id);int updateByPrimaryKeySe
3、lective(T record);int updateByPrimaryKey(T record);List selectAll();2.2 抽象service层的接模板package com.yyc.Templete;import java.util.List;public interface TempleteService / 添加void add(T record);/ 修改void update(T record);/ 查询全部List list();/ 删除void delete(Integer id);/ 获取个T get(Integer id);/ 想要实现必须要个钩,详细解释
4、看下TempleteDao getDao();钩:这钩的其实意思很简单,service层要调dao层的法,就需要个dao对象,但是抽象出来的要么是接,要么就是抽象类,况且这个dao对象千变万化,谁也不知道在使这些模板的时候调的是哪个dao对象,所以这直接定义个获取dao对象的法,可以写在service接,或者是service实现类的接都可以。有这个钩就可以把所有的法全部勾住。2.3 service层实现类service实现类定义成抽象类,并且实现service接package com.yyc.Templete;import java.util.List;public abstract clas
5、s TempleteServiceImpl implements TempleteServiceOverridepublic void add(T record) getDao().insertSelective(record);Overridepublic void update(T record) getDao().updateByPrimaryKeySelective(record);Overridepublic List list() return getDao().selectAll();Overridepublic void delete(Integer id) getDao().
6、deleteByPrimaryKey(id);Overridepublic T get(Integer id) return getDao().selectByPrimaryKey(id);2.4 抽象controller的模板package com.yyc.Templete;import java.util.List;public abstract class TempleteController public abstract TempleteService getService();/ 查询全部public List list() return getService().list();/
7、 删除public String delete(Integer id) getService().delete(id);return redirect:/list;/ 获取个public T get(Integer id) return getService().get(id);/ 添加public void add()public String saveAdd(T record) getService().add(record);return redirect:/list;public void update()/ 更新public String saveUpdate(T record) g
8、etService().update(record);return redirect:/list;所有的模板直接定义好了,下就可以愉快的使了。3.使阶段3.1 直接继承dao接模板/ 泛型般是实体类public interface DictionaryTypeDao extends TempleteDao / 什么都不写,接直接都有了3.2 直接继承service接模板public interface DictionaryTypeService extends TempleteService / 还是什么都不写。3.3 直接继承service实现类模板并实现原本就需要实现的service接特别
9、需要注意的是,这的“钩”必须要提供给它Servicepublic class DictionaryTypeServiceImpl extends TempleteServiceImpl implements DictionaryTypeServiceAutowiredDictionaryTypeDao dictionaryTypeDao;/ 提供钩Overridepublic TempleteDao getDao() return dictionaryTypeDao;3.4 继承controller模板注意:注解是不能继承的,所以这重写类的所有法(IDEA不到1秒成),标上注解,就可以愉快的使
10、了。当然特有的法在继承的时候需要单独的添加进去哦!ControllerRequestMapping(/dict)public class DictionaryTypeController extends TempleteController AutowiredDictionaryTypeService dictionaryTypeService;Overridepublic TempleteService getService() return dictionaryTypeService;RequestMapping(/add)Overridepublic void add() super.a
11、dd();RequestMapping(/saveAdd)Overridepublic String saveAdd(DictionaryType record) super.saveAdd(record);return redirect:/dict/list;RequestMapping(/edit)public DictionaryType update(int id) super.update();return dictionaryTypeService.get(id);RequestMapping(/saveUpdate)Overridepublic String saveUpdate(DictionaryType record) Util.getRequest().getAttribute();super.saveUpdate(record);return redirect:/dict/list;RequestMapping(/list)Overridepublic List list() return super.list();RequestMapping(/delete)Overridepu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026福建省金皇环保科技有限公司招聘笔试历年题库附答案
- 新建20万片12英寸存储芯片用硅片生产及SSD配套项目可行性研究报告
- 2026工业机器人核心部件市场全景调研及技术演进与投资价值报告
- 2026中国医疗科室外包管理模式合规性分析与风险预警报告
- 2026银行信托行业市场现状研究及未来趋势与投资价值报告
- 2026中国新材料研发进展及产业化前景与投资策略分析报告
- 2026明矾石行业客户需求变化与营销策略报告
- 2026艺术品拍卖市场发展现状及商业模式创新策略研究报告
- 2026特高压输电设备抗腐蚀涂层技术发展报告
- 2026医药制造行业市场剖析与发展方向及投资布局分析报告
- 市场培训之地推基础培训
- 课堂管理的方法和技巧
- 出版从业考试财务知识点及答案解析
- 耳鼻喉科感染预防综合措施
- 喷漆设备租借合同范本
- 2025年斗轮机司机题库及答案(可下载)
- 食品生产车间三级安全培训课件
- (2024版)人教版 小学体育与健康 一年级全一册 教学设计
- 2024版2025秋季新人教版三年级上册数学全册核心素养教案教学设计
- 红细胞计数课件
- 二手手机回收协议合同
评论
0/150
提交评论