javaEE项目抽取BaseService及其注意事项
Posted 太快的幸福,措手不及
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaEE项目抽取BaseService及其注意事项相关的知识,希望对你有一定的参考价值。
注意:难点在于service需要注入,那么,怎么注入呢?
1、书写BaseService
package cn.buaa.core.service; import java.io.Serializable; import java.util.List; public interface BaseService<T> { //新增 public void save(T entity); //更新 public void update(T entity); //根据id删除 public void delete(Serializable id); //根据id查询 public T findObjectById(Serializable id); //查询列表 public List<T> findObjects(); }
2、实现接口
package cn.buaa.core.service.impl; import java.io.Serializable; import java.util.List; import cn.buaa.core.dao.BaseDao; import cn.buaa.core.service.BaseService; public class BaseServiceImpl<T> implements BaseService<T> { private BaseDao<T> baseDao; public void setBaseDao(BaseDao<T> baseDao) { this.baseDao = baseDao; } @Override public void save(T entity) { baseDao.save(entity); } @Override public void update(T entity) { baseDao.update(entity); } @Override public void delete(Serializable id) { baseDao.delete(id); } @Override public T findObjectById(Serializable id) { return baseDao.findObjectById(id); } @Override public List<T> findObjects() { return baseDao.findObjects(); } }
3、怎么用呢,如下,设置父类中的Dao
package cn.buaa.nsfw.info.service.impl; import java.io.Serializable; import java.util.List; import javax.annotation.Resource; import org.springframework.orm.hibernate3.HibernateTemplate; import org.springframework.stereotype.Service; import cn.buaa.core.service.impl.BaseServiceImpl; import cn.buaa.nsfw.info.dao.InfoDao; import cn.buaa.nsfw.info.entity.Info; import cn.buaa.nsfw.info.service.InfoService; @Service("infoService") public class InfoServiceImpl extends BaseServiceImpl<Info> implements InfoService { //采用这种方式注入,为了设置父类中的dao private InfoDao infoDao; @Resource public void setInfoDao(InfoDao infoDao) { super.setBaseDao(infoDao); this.infoDao = infoDao; } }
以上是关于javaEE项目抽取BaseService及其注意事项的主要内容,如果未能解决你的问题,请参考以下文章
javaEE SSH框架 BaseAction的抽取以及其他方面代码优化
JAVAEE——BOS物流项目02:学习计划动态添加选项卡ztree项目底层代码构建
(Win10)Java,Maven,Tomcat8.0,Mysql8.0.15安装与环境配置,以及IDEA2019.3使用JDBC连接MySQL创建JavaEE项目