Example usage for org.apache.ibatis.session Configuration setLazyLoadingEnabled

List of usage examples for org.apache.ibatis.session Configuration setLazyLoadingEnabled

Introduction

In this page you can find the example usage for org.apache.ibatis.session Configuration setLazyLoadingEnabled.

Prototype

public void setLazyLoadingEnabled(boolean lazyLoadingEnabled) 

Source Link

Usage

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;
}