Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Entity - inner class in the Test class
- public static class SubEntity extends GeneralEntity {
- public SubEntity() {
- }
- // @QuerySqlField
- private String name;
- public SubEntity(Long id,String name) {
- this.setId(id);
- this.name = name;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- @Override
- public void writeExternal(ObjectOutput out) throws IOException {
- super.writeExternal(out);
- out.writeUTF(name);
- }
- @Override
- public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
- super.readExternal(in);
- name=in.readUTF();
- }
- }
- //Test:
- @Test
- public void gridCRUDTest() {
- assertNotNull(service);
- for(int i=0;i<10;i++) {
- service.insert(new SubEntity(service.getNextId(), "name" + (i + 1)));
- }
- SqlQuery<Long,SubEntity> qry=new SqlQuery<Long, SubEntity>(SubEntity.class," name = ?");
- qry.setArgs("name1");
- try(QueryCursor<Cache.Entry<Long,SubEntity>> cursor=cache.query(qry)) {
- Iterator<Cache.Entry<Long,SubEntity>> it=cursor.iterator();
- SubEntity e=it.next().getValue();
- assertNotNull(e);
- System.out.println(e.getName());
- assertEquals("name1",e.getName());
- }
- }
- //Config:
- <bean id="test-cache" class="org.apache.ignite.configuration.CacheConfiguration">
- ...
- <property name="indexedTypes">
- <list>
- <value>java.lang.Long</value>
- <value>ru.sberbank.oti.general.entities.GeneralEntity</value>
- <value>java.lang.Long</value>
- <value>ru.sberbank.oti.gridgain.GridTest$SubEntity</value>
- <value>java.lang.Long</value>
- <value>ru.sberbank.oti.general.entities.User</value>
- </list>
- </property>
- <property name="queryEntities">
- <list>
- <bean class="org.apache.ignite.cache.QueryEntity">
- <property name="keyType" value="Long"/>
- <property name="valueType" value="ru.sberbank.oti.gridgain.GridTest$SubEntity"/>
- <property name="fields">
- <map>
- <entry key="id" value="java.lang.Long"/>
- <entry key="name" value="java.lang.String"/>
- </map>
- </property>
- <property name="indexes">
- <list>
- <bean class="org.apache.ignite.cache.QueryIndex">
- <constructor-arg value="id" />
- </bean>
- </list>
- </property>
- </bean>
- </list>
- </property>
- </bean>
- </list>
- </property>
- </bean>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement