All Downloads are FREE. Search and download functionalities are using the official Maven repository.

orm.benchmark.mp.MpTest Maven / Gradle / Ivy

The newest version!
package orm.benchmark.mp;

import cn.mybatis.mp.core.mybatis.mapper.context.Pager;
import cn.mybatis.mp.core.sql.executor.chain.QueryChain;
import org.apache.ibatis.session.SqlSession;
import orm.benchmark.TestMethod;
import orm.benchmark.model.SysUser;
import orm.benchmark.mp.mapper.MpSysUserMapper;

import java.io.Serializable;
import java.util.List;

public class MpTest implements TestMethod, SysUser> {

    SqlSession getSqlSession() {
        return Init.getSqlSession();
    }

    MpSysUserMapper getMapper(SqlSession sqlSession) {
        return sqlSession.getMapper(MpSysUserMapper.class);
    }

    @Override
    public SysUser getById(Serializable id) {
        try (SqlSession sqlSession = getSqlSession()) {
            return getMapper(sqlSession).getById(id);
        }
    }

    @Override
    public Pager paging(String username, int page, int size) {
        try (SqlSession sqlSession = getSqlSession()) {
            return QueryChain.of(getMapper(sqlSession))
                    .like(SysUser::getUsername, username)
                    .paging(Pager.of(page, size));
        }
    }

    @Override
    public List list(String username) {
        try (SqlSession sqlSession = getSqlSession()) {
            return (List)QueryChain.of(getMapper(sqlSession))
                .select(SysUser::getUsername)
                    .like(SysUser::getUsername, username)
                    .limit(100)

                    .list();
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy