zoukankan      html  css  js  c++  java
  • ignite中的sql查询

      ignite中进行sql查询需要对要查询的cache和字段进行配置,可以在xml中配置,也可以在代码中配置或进行注解,我用的是xml配置:

    <!-- 配置cache -->
            <property name="cacheConfiguration">
                <list>
                    <bean class="org.apache.ignite.configuration.CacheConfiguration">
                        <property name="name" value="task_template" />
                        <property name="cacheMode" value="PARTITIONED" />
                        <property name="atomicityMode" value="TRANSACTIONAL" />
                        <property name="backups" value="2" />
                        <property name="queryEntities">
                            <list>
                                <bean class="org.apache.ignite.cache.QueryEntity">
                                    <property name="keyType" value="java.lang.Integer" />
                                    <property name="valueType"
                                        value="com.domain.read.TaskTemplate" />
                                    <property name="fields">
                                        <map>
                                            <entry key="taskTemplateId" value="java.lang.Integer" />
                                        </map>
                                    </property>
                                    <property name="indexes">
                                        <list>
                                            <bean class="org.apache.ignite.cache.QueryIndex">
                                                <constructor-arg value="taskTemplateId" />
                                            </bean>
                                        </list>
                                    </property>
                                </bean>
                            </list>
                        </property>
                    </bean>
                </list>
            </property>

      其中keyTpye和ValueType配置就是cache中储存的k和v配置  

      dao查询代码:

    public List<CacheEntryImpl> queryAll() {
            SqlQuery sql = new SqlQuery(TaskTemplate.class,
                    "taskTemplateId <> -1");
            return cache().query(sql).getAll();
        }

      得到的CacheEntryImpl可以进行遍历就得到了需要的东西.

  • 相关阅读:
    字符串面试题:将句子的单词序倒置
    字符串面试题:将整型转换为字符串
    QML定时器
    QML按键事件处理
    QML鼠标事件实现变色矩形
    QML动态加载组件
    QML鼠标区域控制
    属性绑定与赋值
    设置虚拟机的本地端口映射
    关于修改banner信息;nginx反向代理apache应用
  • 原文地址:https://www.cnblogs.com/garfieldcgf/p/5577649.html
Copyright © 2011-2022 走看看