15.spring原始dao开发方法

1.实现UserDao接口

public interface UserDao {
    /**
     * 根据id查询用户
     *
     * @param id
     * @return
     */
    User queryUserById(int id);

    /**
     * 根据用户名模糊查询用户列表
     *
     * @param username
     * @return
     */
    List<User> queryUserByUsername(String username);

    /**
     * 保存
     *
     * @param user
     */
    void saveUser(User user);

}

2.实现UserDaoImpl实现类
编写DAO实现类,实现类必须集成SqlSessionDaoSupport
SqlSessionDaoSupport提供getSqlSession()方法来获取SqlSession

public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {
    @Override
    public User queryUserById(int id) {
        // 获取SqlSession
        SqlSession sqlSession = super.getSqlSession();

        // 使用SqlSession执行操作
        User user = sqlSession.selectOne("queryUserById", id);

        // 不要关闭sqlSession

        return user;
    }

    @Override
    public List<User> queryUserByUsername(String username) {
        // 获取SqlSession
        SqlSession sqlSession = super.getSqlSession();

        // 使用SqlSession执行操作
        List<User> list = sqlSession.selectList("queryUserByUsername", username);

        // 不要关闭sqlSession

        return list;
    }

    @Override
    public void saveUser(User user) {
        // 获取SqlSession
        SqlSession sqlSession = super.getSqlSession();

        // 使用SqlSession执行操作
        sqlSession.insert("saveUser", user);

        // 不用提交,事务由spring进行管理
        // 不要关闭sqlSession
    }
}

3.配置dao
把dao实现类配置到spring容器中,如下图
 

<bean id="userDao" class="...UserDaoImpl">
    <property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean>

猜你喜欢

转载自blog.csdn.net/weixin_37757346/article/details/81416693