上QQ阅读APP看书,第一时间看更新
16.4 业务逻辑层设计
16.4.1 创建业务逻辑组件接口
新建业务逻辑组件接口,该接口中定义了添加用户、删除用户、更新用户、查询所有用户和按ID查询用户5个方法,代码如下所示。
package net.hncu.service; import java.util.List; import net.hncu.po.User; public interface UserService { //添加用户 public boolean addUser(User user); //删除用户 public boolean deleteUser(int id); //更新用户 public boolean updateUser(User user); //查询所有用户 public List queryAllUser(); //按id查询用户 public User queryUserByID(int id); }
16.4.2 创建业务逻辑组件实现类
新建业务逻辑组件实现类,该类实现业务逻辑组件接口。业务逻辑组件通过调用DAO组件来实现业务逻辑操作,代码如下所示。
package net.hncu.service; import java.util.List; import net.hncu.dao.UserDAO; import net.hncu.po.User; public class UserServiceImpl implements UserService{ //DAO组件引用 private UserDAO userDAO; //设置DAO组件 public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } // 添加用户 public boolean addUser(User user) { //判断是否存在相同ID的用户 if (userDAO.queryByID(user.getId()) == null) { //如果不存在,则调用DAO组件进行保存 userDAO.save(user); } else { return false; } return true; } // 删除用户 public boolean deleteUser(int id) { //判断是否存在相同ID的用户 if (userDAO.queryByID(id) ! = null) { //如果存在,则调用DAO组件进行删除 userDAO.delete(id); } else { return false; } return true; } // 更新用户 public boolean updateUser(User user) { //判断是否存在相同ID的用户 if (userDAO.queryByID(user.getId()) ! = null) { //如果存在,则调用DAO组件进行更新 userDAO.update(user); } else { return false; } return true; //查询所有用户 public List queryAllUser() { //调用DAO组件进行查询 return userDAO.queryAll(); } //按id查询用户 public User queryUserByID(int id) { //调用DAO组件进行查询 return userDAO.queryByID(id); } }
16.4.3 配置业务逻辑组件
在Spring配置文件中配置业务逻辑组件,并为其注入DAO组件,代码如下所示。
<! -- 配置业务逻辑组件 --> <bean id="userService" class="net.hncu.service.UserServiceImpl"> <! -- 为业务逻辑组件注入DAO组件 --> <property name="userDAO" ref="userDAO"></property> </bean>