Java 如何将2个数据库表加载到同一个Gridgain缓存中

Java 如何将2个数据库表加载到同一个Gridgain缓存中,java,database,caching,gridgain,Java,Database,Caching,Gridgain,我在数据库中有两个表department(dept_id和dept)和employee(emp_id、dept_id、firstname、lastname),我想将它们加载到缓存中。我使用了模式导入工具,它生成了CacheConfig.java、DepartmentKey.java、Department.java、Employee.java和EmployeeKey.java文件。现在,如何使用这两个表加载缓存 以下是片段: private static class MySQLDemoStore

我在数据库中有两个表department(dept_id和dept)和employee(emp_id、dept_id、firstname、lastname),我想将它们加载到缓存中。我使用了模式导入工具,它生成了CacheConfig.java、DepartmentKey.java、Department.java、Employee.java和EmployeeKey.java文件。现在,如何使用这两个表加载缓存

以下是片段:

 private static class MySQLDemoStoreFactory<K, V> extends CacheJdbcPojoStoreFactory<K, V> { 
         //{@inheritDoc} 
         @Override public CacheJdbcPojoStore<K, V> create() { 


            MysqlDataSource dataSource = new MysqlDataSource(); 
            dataSource.setURL("jdbc:mysql://localhost/DB"); 
            dataSource.setUser("root"); 
            dataSource.setPassword("pass"); 
            setDataSource(dataSource); 
            return super.create(); 

        } 

    } 
私有静态类MySQLDemoStoreFactory扩展了CacheJdbcPojoStoreFactory{
//{@inheritardoc}
@重写公共缓存jdbcpojostore create(){
MysqlDataSource dataSource=新的MysqlDataSource();
setURL(“jdbc:mysql://localhost/DB"); 
setUser(“根”);
dataSource.setPassword(“pass”);
setDataSource(数据源);
返回super.create();
} 
} 
然后在main中,要加载缓存:

try (Ignite ignite = Ignition.start("examples/config/example-ignite.xml")) { 
            // Configure cache store. 
            CacheConfiguration<EmployeeKey, Employee> cfg = 
                CacheConfig.cache("EmpCache", new MySQLDemoStoreFactory<EmployeeKey, Employee>()); 

            try (IgniteCache<EmployeeKey, Employee> cache = ignite.getOrCreateCache(cfg)) { 
                // Preload cache from database. 
                preload(cache); 
try(Ignite Ignite=Ignition.start(“examples/config/example Ignite.xml”){
//配置缓存存储。
缓存配置cfg=
CacheConfig.cache(“EmpCache”,新的MySQLDemoStoreFactory());
try(IgniteCache cache=ignite.getOrCreateCache(cfg)){
//从数据库预加载缓存。
预加载(缓存);

这只会将其加载到Employee表中,对吗?如何将其同时加载到Department和Employee表中?

我相信Ignite用户列表中回答了这个问题: