SSH框架网上商城项目第2战之基本增删查改、Service和Action的抽取.doc

SSH框架网上商城项目第2战之基本增删查改、Service和Action的抽取.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SSH框架网上商城项目第2战之基本增删查改、Service和Action的抽取剖析

SSH框架网上商城项目第2战之基本增删查改、Service和Action的抽取 我们搭建好了Struts2、Hibernate和Spring的开发环境,并成功将它们整合在一起。这节主要完成一些基本的增删改查以及Service、Dao和Action的抽取。 1. Service层的抽取 上一节中,我们在service层简单写了save和update方法,这里我们开始完善该部分的代码,然后对service层的代码进行抽取。 1.1 完善CategoryService层 对数据库的操作无非是增删改查,首先我们来完善CategoryService层的接口和实现: //CategoryService接口 public interface CategoryService extends BaseServiceCategory { public void save(Category category); //插入 public void update(Category category);//更新 public void delete(int id); //删除 public Category get(int id); //获取一个Category public ListCategory query(); //获取全部Category } 对CategoryService接口的具体实现: public class CategoryServiceImpl extends BaseServiceImplCategory implements CategoryService { private SessionFactory sessionFactory; //Spring会注进来 public void setSessionFactory(SessionFactory sessionFactory) { this.sessionFactory = sessionFactory; } protected Session getSession() { //从当前线程获取session,如果没有则创建一个新的session return sessionFactory.getCurrentSession(); } @Override public void save(Category category) { getSession().save(category); } @Override public void update(Category category) { getSession().update(category); } @Override public void delete(int id) { /*第一种方法有个弊端,就是没删除一次得先查询一次 Object obj = getSession().get(Category.class, id); if(obj != null) { getSession().delete(obj); }*/ String hql = delete Category while id=:id; getSession().createQuery(hql) // .setInteger(id, id) // .executeUpdate(); } @Override public Category get(int id) { return (Category) getSession().get(Category.class, id); } @Override public ListCategory query() { String hql = from Category; return getSession().createQuery(hql).list(); } } 1.2 Service层抽取实现 完成了CategoryService后,我们来抽取Service层的基础实现。思路是这样的:我们抽取一个基础接口BaseService以及基础接口的实现BaseServiceImpl,后面开发的时候,如果需要新的Service,只需要做两步即可:首先定义一个新的接口xxxService继承BaseService接口,这个接口可以增加新的抽象方法;然后定义一个新的实现类xxxServiceImpl继承BaseServiceImpl并实现xxxService接口即可。这样更加便于项目的维护。 我们先根据上面的CategoryService接口来创建BaseService接口: //基础接口BaseService,使用泛型 public

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档