Hi Anrei, My goal is to map the data using CacheJdbcPojoStore and save the data that I already have in Ignite to SQLServer.
The data model has embedded classes and I don't know how to map them.
Currently I got the following setup, which works fine, but that is only the
subset of data.
<property name="cacheStoreFactory">
<bean
class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory">
<property name="dataSourceBean"
value="SQLDataSource" />
<property
name="dialect">
<bean
class="org.apache.ignite.cache.store.jdbc.dialect.SQLServerDialect">
</bean>
</property>
<property
name="types">
<list>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcType">
<property name="cacheName"
value="myCache" />
<property name="databaseTable"
value="EquityCache1" />
<property name="keyType"
value="your.package.EquityKey" />
<property name="keyFields">
<list>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<property
name="databaseFieldType" >
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</property>
<property
name="databaseFieldName" value="identifier" />
<property
name="javaFieldType" value="java.lang.String" />
<property
name="javaFieldName" value="identifier" />
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<property
name="databaseFieldType" >
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</property>
<property
name="databaseFieldName" value="identifierType" />
<property
name="javaFieldType" value="java.lang.String" />
<property
name="javaFieldName" value="identifierType" />
</bean>
</list>
</property>
<property name="valueType"
value="your.package.Equity" />
<property name="valueFields">
<list>
<bean class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<property
name="databaseFieldType" >
<util:constant
static-field="java.sql.Types.INTEGER"/>
</property>
<property
name="databaseFieldName" value="equityID" />
<property
name="javaFieldType" value="java.lang.Long" />
<property
name="javaFieldName" value="equityID" />
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<property
name="databaseFieldType" >
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</property>
<property
name="databaseFieldName" value="equityName" />
<property
name="javaFieldType" value="java.lang.String" />
<property
name="javaFieldName" value="equityName" />
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<property
name="databaseFieldType" >
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</property>
<property
name="databaseFieldName" value="equityType" />
<property
name="javaFieldType" value="java.lang.String" />
<property
name="javaFieldName" value="equityType" />
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</property>
Is it possible to map the firstType (class ListingCode) and the listings
(which is the collection of Listing object)?
Thanks,
Michal
--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
