sprawdź https://github.com/nomanbplmp/CustomSessionStoreExample aby zobaczyć pełny przykład.
Aby magazyn sesji działał z bazą danych inną niż podstawowa, wymagane jest dostarczenie niestandardowego repozytorium sesji i zastąpienie wewnętrznych danych Springa, jak podano poniżej.
@Configuration
@EnableJdbcHttpSession
class SessionConfig {
@Bean
public JdbcOperationsSessionRepository sessionRepository(){
DataSource ds = DataSourceBuilder.create().driverClassName("org.h2.Driver").username("sa").url("jdbc:h2:file:~/test").build();
return new SessionRepo(ds,new DataSourceTransactionManager(ds));
}
}
class SessionRepo extends JdbcOperationsSessionRepository {
public SessionRepo(DataSource dataSource, PlatformTransactionManager transactionManager) {
super(dataSource, transactionManager);
}
}