Following is the java code that loads the cache. package Load;
import java.sql.Types; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCache; import org.apache.ignite.Ignition; import org.apache.ignite.cache.CacheAtomicityMode; import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore; import org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory; import org.apache.ignite.cache.store.jdbc.JdbcType; import org.apache.ignite.cache.store.jdbc.JdbcTypeField; import org.apache.ignite.cache.store.jdbc.dialect.OracleDialect; import org.apache.ignite.configuration.CacheConfiguration; import ignite.example.IgniteUnixImplementation.OrderDetails; import ignite.example.IgniteUnixImplementation.OrderKey; public class OrdersLoad { private static final class CacheJdbcPojoStoreExampleFactory extends CacheJdbcPojoStoreFactory<OrderKey, OrderDetails> { /** * */ private static final long serialVersionUID = 1L; /** {@inheritDoc} */ @Override public CacheJdbcPojoStore<OrderKey, OrderDetails> create() { setDataSourceBean("dataSource"); return super.create(); } } private static CacheConfiguration<OrderKey, OrderDetails> cacheConfiguration() { CacheConfiguration<OrderKey, OrderDetails> cfg = new CacheConfiguration<>("OrdersCache"); CacheJdbcPojoStoreExampleFactory storefactory =new CacheJdbcPojoStoreExampleFactory(); storefactory.setDialect(new OracleDialect()); storefactory.setDataSourceBean("dataSource"); JdbcType jdbcType = new JdbcType(); jdbcType.setCacheName("OrdersCache"); jdbcType.setDatabaseSchema("PDS_CACHE"); jdbcType.setDatabaseTable("ORDERS2"); jdbcType.setKeyType("ignite.example.IgniteUnixImplementation.OrderKey"); jdbcType.setKeyFields(new JdbcTypeField(Types.INTEGER, "ORDERID", Long.class, "OrderID"), new JdbcTypeField(Types.INTEGER, "CITYID", Long.class, "CityID") ); jdbcType.setValueType("ignite.example.IgniteUnixImplementation.OrderDetails"); jdbcType.setValueFields( new JdbcTypeField(Types.VARCHAR, "PRODUCTNAME", String.class, "Productname"), new JdbcTypeField(Types.VARCHAR, "CUSTOMERNAME", String.class, "CustomerName"), new JdbcTypeField(Types.VARCHAR, "STORENAME", String.class, "StoreName") ); storefactory.setTypes(jdbcType); cfg.setCacheStoreFactory(storefactory); cfg.setAtomicityMode(CacheAtomicityMode.ATOMIC); cfg.setReadThrough(true); cfg.setWriteThrough(true); cfg.setSqlSchema("PIE"); return cfg; } public static void main(String[] args) throws Exception { try (Ignite ignite = Ignition.start("Ignite-Client.xml")) { System.out.println(">>> Loading cache OrderDetails"); IgniteCache<OrderKey, OrderDetails> cache = ignite.getOrCreateCache(cacheConfiguration()); cache.clear(); ignite.cache("OrdersCache").loadCache(null); System.out.println(">>> Loaded cache: OrdersCache Size="+cache.size()); } } } -- Sent from: http://apache-ignite-users.70518.x6.nabble.com/