List of usage examples for org.apache.ibatis.session Configuration setLazyLoadingEnabled
public void setLazyLoadingEnabled(boolean lazyLoadingEnabled)
From source file:com.baifendian.swordfish.dao.datasource.ConnectionFactory.java
License:Apache License
/** * sql session factory//from w w w .j a va 2 s . c o m */ public static SqlSessionFactory getSqlSessionFactory() { if (sqlSessionFactory == null) { synchronized (ConnectionFactory.class) { if (sqlSessionFactory == null) { DataSource dataSource = getDataSource(); TransactionFactory transactionFactory = new JdbcTransactionFactory(); Environment environment = new Environment("development", transactionFactory, dataSource); Configuration configuration = new Configuration(environment); configuration.setLazyLoadingEnabled(true); configuration.addMappers("com.baifendian.swordfish.dao.mapper"); SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder(); sqlSessionFactory = builder.build(configuration); } } } return sqlSessionFactory; }
From source file:com.dvdprime.server.mobile.config.MyBatisConfig.java
License:Apache License
/** * MyBatis ? Configuration? .//from w ww . j a v a2 s . c o m * * @return */ public Configuration getConfig() { TransactionFactory transactionFactory = new JdbcTransactionFactory(); Environment environment = new Environment("master", transactionFactory, getTomcatDataSource()); logger.info("MyBatis Configuration Initialization."); Configuration configuration = new Configuration(environment); configuration.setCacheEnabled(true); configuration.setLazyLoadingEnabled(false); configuration.setAggressiveLazyLoading(false); configuration.setUseColumnLabel(true); configuration.setUseGeneratedKeys(false); configuration.setAutoMappingBehavior(AutoMappingBehavior.PARTIAL); configuration.setDefaultExecutorType(ExecutorType.REUSE); configuration.setDefaultStatementTimeout(25000); configuration.setSafeRowBoundsEnabled(true); // Alias Type Iterator<String> it = TypeAliasProp.getProperties().keySet().iterator(); while (it.hasNext()) { String key = it.next(); logger.info("typeAliasRegistry: [{}] -> [{}]", key, TypeAliasProp.getProperties().get(key)); configuration.getTypeAliasRegistry().registerAlias(key, (String) TypeAliasProp.getProperties().get(key)); } // Mapper it = MapperProp.getProperties().keySet().iterator(); while (it.hasNext()) { String key = it.next(); logger.info("mapper loaded: [{}]", MapperProp.getProperties().get(key)); try { InputStream inputStream = Resources .getResourceAsStream((String) MapperProp.getProperties().get(key)); XMLMapperBuilder mapperParser = new XMLMapperBuilder(inputStream, configuration, (String) MapperProp.getProperties().get(key), configuration.getSqlFragments()); mapperParser.parse(); } catch (IOException e) { logger.error("mapper parsing ?."); } } return configuration; }
From source file:net.landora.video.data.AbstractDataManager.java
License:Open Source License
private synchronized SqlSessionFactory getFactory() { if (factory == null) { TransactionFactory transactionFactory = new JdbcTransactionFactory(); Environment environment = new Environment("development", transactionFactory, DatabaseConnectionManager.getInstance().getDataSource()); Configuration configuration = new Configuration(environment); configuration.setCacheEnabled(true); configuration.setLazyLoadingEnabled(false); configuration.getTypeHandlerRegistry().register(Calendar.class, JdbcType.TIMESTAMP, new CalendarTypeHandler()); configuration.getTypeHandlerRegistry().register(Calendar.class, JdbcType.DATE, new DateCalendarTypeHandler()); for (Class<?> clazz : getAliasTypeClasses()) { String className = clazz.getSimpleName(); configuration.getTypeAliasRegistry().registerAlias(className, clazz); }/*from w w w . ja v a 2s.c o m*/ for (Class<?> clazz : getMapperClasses()) { configuration.addMapper(clazz); } factory = new SqlSessionFactoryBuilder().build(configuration); } return factory; }
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); }//from w w w. j ava2 s . c o m 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_ConfigurationSettingOverwritesNamed() throws Throwable { injector = Guice.createInjector(new AbstractModule() { @Override//from ww w .j ava 2s . 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.mybatis.guice.configuration.settings.LazyLoadingEnabledConfigurationSetting.java
License:Apache License
@Override public void applyConfigurationSetting(Configuration configuration) { configuration.setLazyLoadingEnabled(lazyLoadingEnabled); }
From source file:org.sonar.core.persistence.MyBatis.java
License:Open Source License
public MyBatis start() { LogFactory.useSlf4jLogging();//from ww w .ja va 2 s. c o m Configuration conf = new Configuration(); conf.setEnvironment(new Environment("production", createTransactionFactory(), database.getDataSource())); conf.setUseGeneratedKeys(true); conf.setLazyLoadingEnabled(false); conf.setJdbcTypeForNull(JdbcType.NULL); Dialect dialect = database.getDialect(); conf.setDatabaseId(dialect.getId()); conf.getVariables().setProperty("_true", dialect.getTrueSqlValue()); conf.getVariables().setProperty("_false", dialect.getFalseSqlValue()); conf.getVariables().setProperty("_scrollFetchSize", String.valueOf(dialect.getScrollDefaultFetchSize())); loadAlias(conf, "ActiveDashboard", ActiveDashboardDto.class); loadAlias(conf, "Author", AuthorDto.class); loadAlias(conf, "Component", ComponentDto.class); loadAlias(conf, "Dashboard", DashboardDto.class); loadAlias(conf, "Dependency", DependencyDto.class); loadAlias(conf, "DuplicationUnit", DuplicationUnitDto.class); loadAlias(conf, "Graph", GraphDto.class); loadAlias(conf, "Group", GroupDto.class); loadAlias(conf, "GroupRole", GroupRoleDto.class); loadAlias(conf, "GroupMembership", GroupMembershipDto.class); loadAlias(conf, "LoadedTemplate", LoadedTemplateDto.class); loadAlias(conf, "MeasureFilter", MeasureFilterDto.class); loadAlias(conf, "NotificationQueue", NotificationQueueDto.class); loadAlias(conf, "Property", PropertyDto.class); loadAlias(conf, "PurgeableSnapshot", PurgeableSnapshotDto.class); loadAlias(conf, "QualityGate", QualityGateDto.class); loadAlias(conf, "QualityGateCondition", QualityGateConditionDto.class); loadAlias(conf, "ProjectQgateAssociation", ProjectQgateAssociationDto.class); loadAlias(conf, "Resource", ResourceDto.class); loadAlias(conf, "ResourceIndex", ResourceIndexDto.class); loadAlias(conf, "ResourceSnapshot", ResourceSnapshotDto.class); loadAlias(conf, "Rule", RuleDto.class); loadAlias(conf, "RuleParam", RuleParamDto.class); loadAlias(conf, "Snapshot", SnapshotDto.class); loadAlias(conf, "Semaphore", SemaphoreDto.class); loadAlias(conf, "SchemaMigration", SchemaMigrationDto.class); loadAlias(conf, "User", UserDto.class); loadAlias(conf, "UserRole", UserRoleDto.class); loadAlias(conf, "Widget", WidgetDto.class); loadAlias(conf, "WidgetProperty", WidgetPropertyDto.class); loadAlias(conf, "MeasureModel", MeasureModel.class); loadAlias(conf, "Measure", MeasureDto.class); loadAlias(conf, "Metric", MetricDto.class); loadAlias(conf, "Issue", IssueDto.class); loadAlias(conf, "IssueChange", IssueChangeDto.class); loadAlias(conf, "IssueFilter", IssueFilterDto.class); loadAlias(conf, "IssueFilterFavourite", IssueFilterFavouriteDto.class); loadAlias(conf, "SnapshotData", SnapshotDataDto.class); loadAlias(conf, "ActionPlanIssue", ActionPlanDto.class); loadAlias(conf, "ActionPlanStats", ActionPlanStatsDto.class); loadAlias(conf, "PermissionTemplate", PermissionTemplateDto.class); loadAlias(conf, "PermissionTemplateUser", PermissionTemplateUserDto.class); loadAlias(conf, "PermissionTemplateGroup", PermissionTemplateGroupDto.class); loadAlias(conf, "Characteristic", CharacteristicDto.class); loadAlias(conf, "UserWithPermission", UserWithPermissionDto.class); loadAlias(conf, "GroupWithPermission", GroupWithPermissionDto.class); loadAlias(conf, "QualityProfile", QualityProfileDto.class); loadAlias(conf, "ActiveRule", ActiveRuleDto.class); loadAlias(conf, "ActiveRuleParam", ActiveRuleParamDto.class); loadAlias(conf, "RequirementMigration", RequirementMigrationDto.class); loadAlias(conf, "Activity", ActivityDto.class); loadAlias(conf, "AnalysisReport", AnalysisReportDto.class); loadAlias(conf, "IdUuidPair", IdUuidPair.class); // AuthorizationMapper has to be loaded before IssueMapper because this last one used it loadMapper(conf, "org.sonar.core.user.AuthorizationMapper"); // ResourceMapper has to be loaded before IssueMapper because this last one used it loadMapper(conf, ResourceMapper.class); loadMapper(conf, "org.sonar.core.permission.PermissionMapper"); Class<?>[] mappers = { ActivityMapper.class, ActiveDashboardMapper.class, AuthorMapper.class, DashboardMapper.class, DependencyMapper.class, DuplicationMapper.class, GraphDtoMapper.class, IssueMapper.class, IssueChangeMapper.class, IssueFilterMapper.class, IssueFilterFavouriteMapper.class, LoadedTemplateMapper.class, MeasureFilterMapper.class, Migration44Mapper.class, PermissionTemplateMapper.class, PropertiesMapper.class, PurgeMapper.class, ResourceKeyUpdaterMapper.class, ResourceIndexerMapper.class, ResourceSnapshotMapper.class, RoleMapper.class, RuleMapper.class, SchemaMigrationMapper.class, SemaphoreMapper.class, UserMapper.class, GroupMapper.class, WidgetMapper.class, WidgetPropertyMapper.class, org.sonar.api.database.model.MeasureMapper.class, SnapshotDataMapper.class, FileSourceMapper.class, ActionPlanMapper.class, ActionPlanStatsMapper.class, NotificationQueueMapper.class, CharacteristicMapper.class, GroupMembershipMapper.class, QualityProfileMapper.class, ActiveRuleMapper.class, MeasureMapper.class, MetricMapper.class, QualityGateMapper.class, QualityGateConditionMapper.class, ComponentMapper.class, SnapshotMapper.class, ProjectQgateAssociationMapper.class, AnalysisReportMapper.class, Migration45Mapper.class, Migration50Mapper.class }; loadMappers(conf, mappers); configureLogback(mappers); sessionFactory = new SqlSessionFactoryBuilder().build(conf); return this; }