List of usage examples for org.apache.ibatis.session Configuration getMappedStatementNames
public Collection<String> getMappedStatementNames()
From source file:org.mybatis.guice.configuration.ConfigurationProvider.java
License:Apache License
@Override public Configuration get() { final Configuration configuration = newConfiguration(environment); configuration.setLazyLoadingEnabled(lazyLoadingEnabled); configuration.setAggressiveLazyLoading(aggressiveLazyLoading); configuration.setMultipleResultSetsEnabled(multipleResultSetsEnabled); configuration.setUseGeneratedKeys(useGeneratedKeys); configuration.setUseColumnLabel(useColumnLabel); configuration.setCacheEnabled(cacheEnabled); configuration.setDefaultExecutorType(defaultExecutorType); configuration.setAutoMappingBehavior(autoMappingBehavior); configuration.setCallSettersOnNulls(callSettersOnNulls); configuration.setDefaultStatementTimeout(defaultStatementTimeout); configuration.setMapUnderscoreToCamelCase(mapUnderscoreToCamelCase); for (ConfigurationSetting setting : configurationSettings) { setting.applyConfigurationSetting(configuration); }/*w w w .java 2s .c om*/ try { if (databaseIdProvider != null) { configuration.setDatabaseId(databaseIdProvider.getDatabaseId(dataSource)); } for (MapperConfigurationSetting setting : mapperConfigurationSettings) { setting.applyConfigurationSetting(configuration); } if (failFast) { configuration.getMappedStatementNames(); } } catch (Throwable cause) { throw new ProvisionException( "An error occurred while building the org.apache.ibatis.session.Configuration", cause); } finally { ErrorContext.instance().reset(); } return configuration; }
From source file:org.mybatis.guice.configuration.ConfigurationProviderTest.java
License:Apache License
@Test public void get() { injector = Guice.createInjector(new AbstractModule() { @Override//from w ww. j a v a 2 s.c o m protected void configure() { bind(Environment.class).toInstance(environment); bind(DataSource.class).toInstance(dataSource); bind(Configuration.class).toProvider(configurationProvider); } }); Configuration configuration = injector.getInstance(Configuration.class); configuration.getMappedStatementNames(); // Test that configuration is valid. assertEquals(environment, configuration.getEnvironment()); assertNull(configuration.getTypeAliasRegistry().getTypeAliases().get("alias")); assertFalse(configuration.getTypeHandlerRegistry().hasTypeHandler(Alias.class)); assertFalse(configuration.getTypeHandlerRegistry().hasTypeHandler(Human.class)); assertEquals(0, configuration.getMapperRegistry().getMappers().size()); assertEquals(0, configuration.getInterceptors().size()); assertFalse(configuration.isLazyLoadingEnabled()); assertTrue(configuration.isAggressiveLazyLoading()); assertTrue(configuration.isMultipleResultSetsEnabled()); assertFalse(configuration.isUseGeneratedKeys()); assertTrue(configuration.isUseColumnLabel()); assertTrue(configuration.isCacheEnabled()); assertEquals(ExecutorType.SIMPLE, configuration.getDefaultExecutorType()); assertEquals(AutoMappingBehavior.PARTIAL, configuration.getAutoMappingBehavior()); assertFalse(configuration.isCallSettersOnNulls()); assertNull(configuration.getDefaultStatementTimeout()); assertFalse(configuration.isMapUnderscoreToCamelCase()); }
From source file:org.mybatis.guice.configuration.ConfigurationProviderTest.java
License:Apache License
@Test public void get_Optionals() throws Throwable { String databaseId = "test_database_id"; final Integer defaultFetchSize = 200; final Integer defaultStatementTimeout = 2000; when(databaseIdProvider.getDatabaseId(dataSource)).thenReturn(databaseId); final Key<TypeHandler<Alias>> aliasTypeHandlerKey = Key.get(new TypeLiteral<TypeHandler<Alias>>() { });//ww w. j av a2 s .c o m injector = Guice.createInjector(new AbstractModule() { @Override protected void configure() { bind(Environment.class).toInstance(environment); bind(DataSource.class).toInstance(dataSource); bindConstant().annotatedWith(Names.named("mybatis.configuration.lazyLoadingEnabled")).to(true); bindConstant().annotatedWith(Names.named("mybatis.configuration.aggressiveLazyLoading")).to(false); bindConstant().annotatedWith(Names.named("mybatis.configuration.multipleResultSetsEnabled")) .to(false); bindConstant().annotatedWith(Names.named("mybatis.configuration.useGeneratedKeys")).to(true); bindConstant().annotatedWith(Names.named("mybatis.configuration.useColumnLabel")).to(false); bindConstant().annotatedWith(Names.named("mybatis.configuration.cacheEnabled")).to(false); bindConstant().annotatedWith(Names.named("mybatis.configuration.defaultExecutorType")) .to(ExecutorType.REUSE); bindConstant().annotatedWith(Names.named("mybatis.configuration.autoMappingBehavior")) .to(AutoMappingBehavior.FULL); bindConstant().annotatedWith(Names.named("mybatis.configuration.callSettersOnNulls")).to(true); bindConstant().annotatedWith(Names.named("mybatis.configuration.defaultStatementTimeout")) .to(defaultStatementTimeout); bindConstant().annotatedWith(Names.named("mybatis.configuration.mapUnderscoreToCamelCase")) .to(true); bind(DatabaseIdProvider.class).toInstance(databaseIdProvider); bind(Configuration.class).toProvider(configurationProvider); bind(aliasTypeHandlerKey).toInstance(aliasTypeHandler); bind(Interceptor.class).toInstance(interceptor); } }); configurationProvider.addConfigurationSetting(new AliasConfigurationSetting("alias", Alias.class)); JavaTypeAndHandlerConfigurationSettingProvider aliasTypeHandlerSetting = JavaTypeAndHandlerConfigurationSettingProvider .create(Alias.class, aliasTypeHandlerKey); injector.injectMembers(aliasTypeHandlerSetting); configurationProvider.addConfigurationSetting(aliasTypeHandlerSetting.get()); TypeHandlerConfigurationSettingProvider humanTypeHandlerSetting = new TypeHandlerConfigurationSettingProvider( Key.get(HumanTypeHandler.class)); injector.injectMembers(humanTypeHandlerSetting); configurationProvider.addConfigurationSetting(humanTypeHandlerSetting.get()); configurationProvider.addMapperConfigurationSetting(new MapperConfigurationSetting(TestMapper.class)); InterceptorConfigurationSettingProvider interceptorSetting = new InterceptorConfigurationSettingProvider( Interceptor.class); injector.injectMembers(interceptorSetting); configurationProvider.addConfigurationSetting(interceptorSetting.get()); configurationProvider.addConfigurationSetting((new ConfigurationSetting() { @Override public void applyConfigurationSetting(Configuration configuration) { configuration.setDefaultFetchSize(defaultFetchSize); } })); Configuration configuration = injector.getInstance(Configuration.class); configuration.getMappedStatementNames(); // Test that configuration is valid. assertEquals(environment, configuration.getEnvironment()); assertEquals(Alias.class, configuration.getTypeAliasRegistry().getTypeAliases().get("alias")); assertTrue(configuration.getTypeHandlerRegistry().hasTypeHandler(Alias.class)); assertTrue(configuration.getTypeHandlerRegistry().hasTypeHandler(Human.class)); assertEquals(1, configuration.getMapperRegistry().getMappers().size()); assertTrue(configuration.getMapperRegistry().getMappers().contains(TestMapper.class)); assertEquals(1, configuration.getInterceptors().size()); assertTrue(configuration.getInterceptors().contains(interceptor)); verify(databaseIdProvider).getDatabaseId(dataSource); assertEquals(databaseId, configuration.getDatabaseId()); assertTrue(configuration.isLazyLoadingEnabled()); assertFalse(configuration.isAggressiveLazyLoading()); assertFalse(configuration.isMultipleResultSetsEnabled()); assertTrue(configuration.isUseGeneratedKeys()); assertFalse(configuration.isUseColumnLabel()); assertFalse(configuration.isCacheEnabled()); assertEquals(ExecutorType.REUSE, configuration.getDefaultExecutorType()); assertEquals(AutoMappingBehavior.FULL, configuration.getAutoMappingBehavior()); assertTrue(configuration.isCallSettersOnNulls()); assertEquals(defaultStatementTimeout, configuration.getDefaultStatementTimeout()); assertTrue(configuration.isMapUnderscoreToCamelCase()); assertEquals(defaultFetchSize, configuration.getDefaultFetchSize()); }
From source file:org.mybatis.guice.configuration.ConfigurationProviderTest.java
License:Apache License
@Test public void get_ConfigurationSettingOverwritesNamed() throws Throwable { injector = Guice.createInjector(new AbstractModule() { @Override/*from www. j a v a2s . co m*/ protected void configure() { bind(Environment.class).toInstance(environment); bind(DataSource.class).toInstance(dataSource); bind(Configuration.class).toProvider(configurationProvider); bindConstant().annotatedWith(Names.named("mybatis.configuration.lazyLoadingEnabled")).to(true); } }); configurationProvider.addConfigurationSetting(new ConfigurationSetting() { @Override public void applyConfigurationSetting(Configuration configuration) { configuration.setLazyLoadingEnabled(false); } }); Configuration configuration = injector.getInstance(Configuration.class); configuration.getMappedStatementNames(); // Test that configuration is valid. assertFalse(configuration.isLazyLoadingEnabled()); }
From source file:org.workspace7.osgi.mybatis.extender.impl.MyBatisMapperRegistry.java
License:Apache License
public void registerBundle(Bundle bundle) { Map<String, List<String>> dsMappers = ExtenderUtil.getMapperClauses(bundle); for (String dsName : dsMappers.keySet()) { Environment environment = registeredEnvironments.get(dsName); Configuration configuration = new Configuration(environment); if (configuration != null) { List<String> packageNames = dsMappers.get(dsName); for (String packageName : packageNames) { String cleanPackageName = packageName.trim(); logger.info("Adding mappers and xmls from package {} to Configuration {}", cleanPackageName, dsName);//from www.j a v a 2s . c o m configuration.addMappers(cleanPackageName); Enumeration<URL> mapperXmls = ExtenderUtil.findFilesFromBundle(bundle, packageName, "*.xml"); if (mapperXmls != null) { while (mapperXmls.hasMoreElements()) { URL mapperxmlUrl = mapperXmls.nextElement(); try { String mappingFile = ExtenderUtil.mappingFileName(mapperxmlUrl.getFile()); logger.info("Adding Mapper XML {} to Config {} ", mappingFile, dsName); InputStream in = mapperxmlUrl.openStream(); XMLMapperBuilder xmlMapperBuilder = new XMLMapperBuilder(in, configuration, mappingFile, configuration.getSqlFragments()); xmlMapperBuilder.parse(); in.close(); Collection<String> mappedStatements = configuration.getMappedStatementNames(); for (String mappedStmt : mappedStatements) { logger.info(" Added Mapped Statement: {}", mappedStmt); } unregisterSqlSessionFactory(dsName); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder() .build(configuration); Dictionary<String, String> props = new Hashtable<>(); props.put("dataSourceName", dsName); ServiceRegistration serviceRegistration = bundleContext.registerService( SqlSessionFactory.class.getName(), sqlSessionFactory, props); registeredSqlSessionFactories.put(dsName, serviceRegistration); } catch (IOException e) { logger.error("Unable to add mapper {} ", mapperxmlUrl.toString(), e); } } } } } } logger.info("Registering Mapper Bundle {} ", bundle.getSymbolicName()); activeBundles.add(bundle); }