抽取BaseService
到目前为止,我们已经写了三个模块的开发了。我们已经抽取过了BaseAction、BaseDao,我们这次来看看我们的Service接口。
- UserService
/**
* created by ozc on 2017/5/23.
*/
public interface UserService {
//新增
void save(User user);
//更新
void update(User user);
//根据id删除
void delete(Serializable id);
//根据id查找
User findObjectById(Serializable id);
//查找列表
List<User> findObjects() throws ServiceException;
//导出用户列表
void exportExcel(List<User> userList, ServletOutputStream outputStream);
//导入用户列表
void importExcel(File userExcel, String userExcelFileName);
/**
* 根据帐号和用户id查询用户
*
* @param id 用户ID
* @param account 用户帐号
* @return 用户列表
*/
List<User> findAccount(String id, String account);
void saveUserAndRole(User user, String[] userRoleIds);
//通过用户id得到该用户的角色
List<UserRole> findRoleById(String id);
void deleteUserRoleById(String[] userRoleIds);
List<User> findUserByAccountAndPassword(String account, String password);
}
- InfoService
/**
* created by ozc on 2017/5/23.
*/
public interface InfoService {
//新增
public void save(Info info);
//更新
public void update(Info info);
//根据id删除
public void delete(Serializable id);
//根据id查找
public Info findObjectById(Serializable id);
//查找列表
public List<Info> findObjects() ;
}
- RoleService
/**
* Created by ozc on 2017/5/26.
*/
public interface RoleService {
//新增
void save(Role role);
//更新
void update(Role role);
//根据id删除O
void delete(Serializable id);
//根据id查找
Role findObjectById(Serializable id);
//查找列表
List<Role> findObjects() ;
}
我们可以发现,三个Service接口中都存在着增删改查的方法,这明显就是重复的代码。因此,我们需要将他们进行抽取成一个BaseService。
抽取BaseService
在core模块中添加service包,抽取BaseService
package zhongfucheng.core.service;
import java.io.Serializable;
import java.util.List;