美文网首页
Mybatis原始Dao开发

Mybatis原始Dao开发

作者: 开发猛男 | 来源:发表于2019-06-22 20:34 被阅读0次

假设环境已搭建好,sql映射已写好,现在创建dao。

1. 创建dao接口

public interface UserDao {
    public User getUserById(Integer id);
}

2. 编写dao实现类

public class UserDaoImpl implements UserDao {
    private SqlSessionFactory factory;
    public UserDaoImpl() {}
    public UserDaoImpl(SqlSessionFactory factory) {
        this.factory = factory;
    }
    @Override
    public User getUserById(Integer id) {
        SqlSession session = factory.openSession();
        User user = session.selectOne("test.getUserById", id);
        return user;
    }
}

注意这里提供了带factory参数的构造方法
因为factory最佳使用范围是整个项目,一旦创建可以重复使用。
session线程不安全,最佳使用范围是方法内部,使用完销毁。
所以从上层传入factory 在本层创建session

3. 测试程序

直接正常调用dao方法即可。

public class Demo1 {
    private SqlSessionFactory factory;
    @Before
    public void setUp() throws IOException {
        String resource = "SqlMapConfig.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        this.factory = new SqlSessionFactoryBuilder().build(inputStream);
    }
    @Test
    public void run5() {
        UserDao dao = new UserDaoImpl(this.factory);
        User user = dao.getUserById(4);
        System.out.println(user);
    }

相关文章

网友评论

      本文标题:Mybatis原始Dao开发

      本文链接:https://www.haomeiwen.com/subject/ljovqctx.html