package jef.database; /** * JMX Bean for ORM Configuration. * * Most of configuration items can be adjusted in runtime. * * @author jiyi */ public interface ORMConfigMBean { /** * 获得配置参数 * @return {@link DbCfg#DB_ENABLE_LAZY_LOAD} */ boolean isEnableLazyLoad(); /** * LOB字段延迟加载 * @return */ boolean isEnableLazyLob(); /** * LOB字段延迟加载开关 * @param enableLazyLob */ public void setEnableLazyLob(boolean enableLazyLob); /** * 修改配置 * @param enableLazyLoad {@link DbCfg#DB_ENABLE_LAZY_LOAD} */ void setEnableLazyLoad(boolean enableLazyLoad); /** * 获得配置参数 * @return {@link DbCfg#ALLOW_EMPTY_QUERY} */ boolean isAllowEmptyQuery(); /** * 修改配置 * @param allowEmptyQuery {@link DbCfg#ALLOW_EMPTY_QUERY} */ void setAllowEmptyQuery(boolean allowEmptyQuery); /** * 获得配置参数 * @return {@link DbCfg#DB_SUPPORT_MANUAL_GENERATE} */ boolean isManualSequence(); /** * 修改配置 * @param manualSequence {@link DbCfg#DB_SUPPORT_MANUAL_GENERATE} */ void setManualSequence(boolean manualSequence); /** * 获得配置参数 * @return {@link DbCfg#DB_KEEP_TX_FOR_POSTGRESQL} */ boolean isKeepTxForPG(); /** * 修改配置 * @param keepTxForPG {@link DbCfg#DB_KEEP_TX_FOR_POSTGRESQL} */ void setKeepTxForPG(boolean keepTxForPG); /** * 获得配置参数 * @return {@link DbCfg#DB_USE_OUTER_JOIN} */ boolean isUseOuterJoin(); /** * 修改配置 * @param useOuterJoin {@link DbCfg#DB_USE_OUTER_JOIN} */ void setUseOuterJoin(boolean useOuterJoin); /** * 获得配置参数 * @return {@link DbCfg#DB_ENCODING} */ String getDbEncoding(); /** * 修改配置 * @param dbEncoding {@link DbCfg#DB_ENCODING} */ void setDbEncoding(String dbEncoding); /** * 获得配置参数 * @return {@link DbCfg#DB_ENCODING_SHOWLENGTH} */ boolean isShowStringLength(); /** * 修改配置 * @param showStringLength {@link DbCfg#DB_ENCODING_SHOWLENGTH} */ void setShowStringLength(boolean showStringLength); /** * 获得配置参数 * @return {@link DbCfg#DB_MAX_RESULTS_LIMIT} */ int getGlobalMaxResults(); /** * 修改配置 * @param globalMaxResults {@link DbCfg#DB_MAX_RESULTS_LIMIT} */ void setGlobalMaxResults(int globalMaxResults); /** * 获得配置参数 * @return 调试开关值 */ boolean isDebugMode(); /** * 修改配置 * @param debugMode 是否调试 */ void setDebugMode(boolean debugMode); /** * 获得配置参数 * @return {@link DbCfg#DB_FETCH_SIZE} */ int getGlobalFetchSize(); /** * 修改配置 * @param globalFetchSize {@link DbCfg#DB_FETCH_SIZE} */ void setGlobalFetchSize(int globalFetchSize); /** * 获得配置参数 * @return {@link DbCfg#DB_MAX_BATCH_LOG} */ int getMaxBatchLog(); /** * 修改配置 * @param maxBatchLog {@link DbCfg#DB_MAX_BATCH_LOG} */ void setMaxBatchLog(int maxBatchLog); /** * 获得配置参数 * @return {@link DbCfg#DB_SELECT_TIMEOUT} */ int getSelectTimeout(); /** * 修改配置 * @param selectTimeout {@link DbCfg#DB_SELECT_TIMEOUT} */ void setSelectTimeout(int selectTimeout); /** * 获得配置参数 * @return {@link DbCfg#DB_UPDATE_TIMEOUT} */ int getUpdateTimeout(); /** * 修改配置 * @param updateTimeout {@link DbCfg#DB_UPDATE_TIMEOUT} */ void setUpdateTimeout(int updateTimeout); /** * 获得配置参数 * @return {@link DbCfg#DB_DELETE_TIMEOUT} */ int getDeleteTimeout(); /** * 修改配置 * @param deleteTimeout {@link DbCfg#DB_DELETE_TIMEOUT} */ void setDeleteTimeout(int deleteTimeout); /** * 获得配置参数 * @return {@link DbCfg#DB_CACHE_RESULTSET} */ boolean isCacheResultset(); /** * 修改配置 * @param cacheResultset {@link DbCfg#DB_CACHE_RESULTSET} */ void setCacheResultset(boolean cacheResultset); /** * 获得配置参数 * @return {@link DbCfg#DB_SINGLE_DATASOURCE} */ boolean isSingleSite(); /** * 修改配置 * @param singleSite {@link DbCfg#DB_SINGLE_DATASOURCE} */ void setSingleSite(boolean singleSite); /** * 获得配置参数 * @return {@link DbCfg#ALLOW_REMOVE_START_WITH} */ boolean isAllowRemoveStartWith(); /** * 修改配置 * @param allowRemoveStartWith {@link DbCfg#ALLOW_REMOVE_START_WITH} */ void setAllowRemoveStartWith(boolean allowRemoveStartWith); /** * 获得配置参数 * @return {@link DbCfg#DB_FORCE_ENHANCEMENT} */ boolean isCheckEnhancement(); /** * 修改配置 * @param checkEnhancement {@link DbCfg#DB_FORCE_ENHANCEMENT} */ void setCheckEnhancement(boolean checkEnhancement); /** * 获得配置参数 * @return {@link DbCfg#DB_SPECIFY_ALLCOLUMN_NAME} */ boolean isSpecifyAllColumnName(); /** * 修改配置 * @param specifyAllColumnName {@link DbCfg#DB_SPECIFY_ALLCOLUMN_NAME} */ void setSpecifyAllColumnName(boolean specifyAllColumnName); /** * 获得配置参数 * @return {@link DbCfg#DB_DYNAMIC_INSERT} */ boolean isDynamicInsert(); /** * 修改配置 * @param dynamicInsert {@link DbCfg#DB_DYNAMIC_INSERT} */ void setDynamicInsert(boolean dynamicInsert); /** * 获得配置参数 * @return {@link DbCfg#DB_DYNAMIC_UPDATE} */ boolean isDynamicUpdate(); /** * 修改配置 * @param dynamicUpdate {@link DbCfg#DB_DYNAMIC_UPDATE} */ void setDynamicUpdate(boolean dynamicUpdate); /** * 获得配置参数 * @return {@link DbCfg#CACHE_LEVEL_1} */ boolean isCacheLevel1(); /** * 修改配置 * @param cacheLevel1 {@link DbCfg#CACHE_LEVEL_1} */ void setCacheLevel1(boolean cacheLevel1); /** * 获得配置参数 * @return 一级缓存调试开关,该开关只能通过API调节。主要供开发调试用。 */ boolean isCacheDebug(); /** * 修改配置 * @param cacheDebug 一级缓存调试开关,该开关只能通过API调节。主要供开发调试用。 */ void setCacheDebug(boolean cacheDebug); /** * 获得配置参数 * @return {@link DbCfg#DB_FORMAT_SQL} */ boolean isFormatSQL(); /** * 修改配置 * @param value {@link DbCfg#DB_FORMAT_SQL} */ void setFormatSQL(boolean value); /** * 获得配置参数 * @return {@link DbCfg#DB_HEARTBEAT} */ long getHeartBeatSleep(); /** * 修改配置 * @param heartBeatSleep {@link DbCfg#DB_HEARTBEAT} */ void setHeartBeatSleep(long heartBeatSleep); /** * 得到当前所在主机的IP地址 * @return */ String getHostIp(); /** * 得到当前所在主机的名称 * @return */ String getServerName(); /** * 得到已经加载的Entity的总数 * @return */ int getLoadedEntityCount(); /** * 清除缓存中的Entity Metadata. */ void clearMetadatas(); /** * 得到Schema映射配置字符串 * @return {@link DbCfg#SCHEMA_MAPPING} */ String getSchemaMapping(); /** * 修改配置 * @param data {@link DbCfg#SCHEMA_MAPPING} */ void setSchemaMapping(String data); /** * 获得配置参数 * @return {@link DbCfg#DB_DATASOURCE_MAPPING} */ String getSiteMapping(); /** * 修改配置 * @param data {@link DbCfg#DB_DATASOURCE_MAPPING} */ void setSiteMapping(String data); /** * 获得配置参数 * @return {@link DbCfg#METADATA_RESOURCE_PATTERN} */ String getMetadataResourcePattern(); /** * 修改配置 * @param pattern {@link DbCfg#METADATA_RESOURCE_PATTERN} */ void setMetadataResourcePattern(String pattern); /** * 获得配置参数 * @return {@link DbCfg#DB_NAMED_QUERY_UPDATE} */ boolean isCheckUpdateForNamedQueries(); /** * 修改配置 * @param checkUpdateForNamedQueries {@link DbCfg#DB_NAMED_QUERY_UPDATE} */ void setCheckUpdateForNamedQueries(boolean checkUpdateForNamedQueries); /** * 获得配置参数 * @return {@link DbCfg#PARTITION_INMEMORY_MAXROWS} */ int getPartitionInMemoryMaxRows(); /** * 修改配置 * @param partitionInMemoryMaxRows {@link DbCfg#PARTITION_INMEMORY_MAXROWS} */ void setPartitionInMemoryMaxRows(int partitionInMemoryMaxRows); /** * 获得配置参数 * @return {@link DbCfg#DB_SET_ISOLATION} */ boolean isSetTxIsolation(); /** * 修改配置 * @param setTxIsolation {@link DbCfg#DB_SET_ISOLATION} */ void setSetTxIsolation(boolean setTxIsolation); /** * 获得配置参数 * @return {@link DbCfg#DB_CHECK_SQL_FUNCTIONS} */ boolean isCheckSqlFunctions(); /** * 修改配置 * @param checkSqlFunctions {@link DbCfg#DB_CHECK_SQL_FUNCTIONS} */ void setCheckSqlFunctions(boolean checkSqlFunctions); /** * 获得配置参数 * @return {@link DbCfg#AUTO_SEQUENCE_CREATION} */ boolean isAutoCreateSequence(); /** * 修改配置 * @param autoCreateSequence {@link DbCfg#AUTO_SEQUENCE_CREATION} */ void setAutoCreateSequence(boolean autoCreateSequence); /** * 获得配置参数 * @return {@link DbCfg#PARTITION_CREATE_TABLE_INNEED} */ boolean isPartitionCreateTableInneed(); /** * 修改配置 * @param partitionCreateTableInneed {@link DbCfg#PARTITION_CREATE_TABLE_INNEED} */ void setPartitionCreateTableInneed(boolean partitionCreateTableInneed); /** * 获得配置参数 * @return {@link DbCfg#PARTITION_FILTER_ABSENT_TABLES} */ boolean isFilterAbsentTables(); /** * 修改配置 * @param filterAbsentTables {@link DbCfg#PARTITION_FILTER_ABSENT_TABLES} */ void setFilterAbsentTables(boolean filterAbsentTables); /** * 获得配置参数 * @return value of {@link DbCfg#DB_JPA_CONTINUE_COMMIT_IF_ERROR}. */ boolean isJpaContinueCommitIfError(); /** * 修改配置 * @param jpaContinueCommitIfError {@link DbCfg#DB_JPA_CONTINUE_COMMIT_IF_ERROR} * */ void setJpaContinueCommitIfError(boolean jpaContinueCommitIfError); boolean isGenerateBySequenceAndIdentityToAUTO(); void setGenerateBySequenceAndIdentityToAUTO(boolean generateBySequenceAndIdentityToAUTO); }