最新elasticsearch7(五、结合mybatis、springboot实例)

前言

上一篇介绍Elasticsearch7.5的破解方法,结果csdn现在莫名其妙不支持破解、激活类博文公开,审核没有通过。不过网上也有其他版本的破解方式,新版本也就一些细节区别,有需要的也可以后面留言。
这节我们接着第三节写下Elasticsearch结合mybatis的实例。maven依赖x-pack-sql-jdbc需要加上,还要记得配置repository,因为中央仓没有发布。

DataSource配置

@Configuration
@MapperScan(basePackages={"com.yds.datacenter.dao.es"}, sqlSessionFactoryRef="esSqlSessionFactory")
public class ElasticsearchConfig {

    @Bean(name = "esDataSource")
    public DataSource clickHouseDataSource() {
        EsDataSource dataSource = new EsDataSource();
        String address = "jdbc:es://192.168.9.226:9200";
        dataSource.setUrl(address);
        Properties connectionProperties = new Properties();
        dataSource.setProperties(connectionProperties);
        return dataSource;
    }

    @Bean(name = "esSqlSessionFactory")
    public SqlSessionFactory clickHouseSqlSessionFactory(@Qualifier("esDataSource") DataSource esDateSource) throws Exception {
        final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(esDateSource);
        sessionFactory.setConfigLocation(new ClassPathResource("mybatis-config.xml"));
        return sessionFactory.getObject();
    }
}

mybatis脚本

    <select id="query" parameterType="java.lang.String" resultType="com.tt.datacenter.utils.es.Person">
        ${param1}
    </select>

    <select id="count" resultType="java.lang.Long">
        select count(*) from person
    </select>

单元测试

我这里先插入了索引名为Person的测试数据1亿条,然后用sql查询总数,再随机条件查询一组数据,避免缓存影响。可以看到总数有1.34亿多条,我们随机查询的时间是328毫秒。

在这里插入图片描述
ES7的结合配置mybatis的配置还是很简单的,使用起来查询是不是很方便。

发布了62 篇原创文章 · 获赞 33 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/yyoc97/article/details/104270018
今日推荐