當前位置: 首頁>>代碼示例>>Java>>正文


Java DBMaker.make方法代碼示例

本文整理匯總了Java中org.mapdb.DBMaker.make方法的典型用法代碼示例。如果您正苦於以下問題:Java DBMaker.make方法的具體用法?Java DBMaker.make怎麽用?Java DBMaker.make使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.mapdb.DBMaker的用法示例。


在下文中一共展示了DBMaker.make方法的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: open

import org.mapdb.DBMaker; //導入方法依賴的package包/類
@Override
public void open() {
	File file = new File(databaseDir_);
	if (!file.exists()) {
		file.mkdirs();
	}
	try {
		File dbFile = File.createTempFile(DATABASE_NAME, "db", file);
		DBMaker maker = DBMaker
			    .newFileDB(dbFile)
			    .transactionDisable()
			    .asyncWriteQueueSize(5000)
			    .mmapFileEnableIfSupported();
		if(this.getCompressMode()){
		    maker.compressionEnable();
		}
		mdb_ = maker.make();
		map_ = mdb_.createHashMap(MAP_NAME)
			.hasher(Hasher.BYTE_ARRAY)
			.makeOrGet();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}
 
開發者ID:ppdai,項目名稱:sessdb,代碼行數:26,代碼來源:MdbBenchmark.java

示例2: start

import org.mapdb.DBMaker; //導入方法依賴的package包/類
@Override
public void start() {
   expiryEntryQueue = new LinkedBlockingQueue<ExpiryEntry>(configuration.expiryQueueSize());
   File location = new File(configuration.location());
   location.mkdirs();
   File dbFile = new File(location, "mapdb");
   DBMaker<?> dbMaker = DBMaker.newFileDB(dbFile)
         .transactionDisable()
         .asyncWriteDisable();
   
   if (configuration.compression())
      dbMaker.compressionEnable();
   
   this.db = dbMaker.make();
   
   
   this.store = db.createHashMap(STORE_DB_NAME)
         .makeOrGet();
   this.expired = db.createHashMap(EXPIRY_DB_NAME)
         .makeOrGet();
}
 
開發者ID:saturnism,項目名稱:infinispan-cachestore-mapdb,代碼行數:22,代碼來源:MapDBStore.java

示例3: start

import org.mapdb.DBMaker; //導入方法依賴的package包/類
@Override
public void start() {
   expiryEntryQueue = new LinkedBlockingQueue<ExpiryEntry>(configuration.expiryQueueSize());
   DBMaker<?> dbMaker = DBMaker.newDirectMemoryDB()
         .transactionDisable().asyncWriteDisable();
         //.asyncFlushDelay(100);
   
   if (configuration.compression())
      dbMaker.compressionEnable();
   
   this.db = dbMaker.make();
   
   
   this.store = db.createHashMap(STORE_DB_NAME + cache.getName())
         .makeOrGet();
   this.expired = db.createHashMap(EXPIRY_DB_NAME + cache.getName())
         .makeOrGet();
}
 
開發者ID:saturnism,項目名稱:infinispan-cachestore-offheap,代碼行數:19,代碼來源:OffheapStore.java

示例4: init

import org.mapdb.DBMaker; //導入方法依賴的package包/類
private void init() {
  DBMaker maker;
  if (file == null)
    maker = DBMaker.newMemoryDB();
  else {
    if (overwrite)
      wipe(file);
    maker = DBMaker.newFileDB(new File(file));
    maker = maker.cacheSize(cache_size);
    if (async) {
      maker = maker.asyncWriteEnable();
      maker = maker.asyncWriteFlushDelay(10000);
    }
    if (mmap)
      maker = maker.mmapFileEnableIfSupported();
    if (compression)
      maker = maker.compressionEnable();
    if (snapshot)
      maker = maker.snapshotEnable();
    if (notxn)
      maker = maker.transactionDisable();
  }

  db = maker.make();

  if (!db.exists("idmap"))
    idmap = db.createHashMap("idmap")
      .valueSerializer(new RecordSerializer())
      .make();
  else
    idmap = db.getHashMap("idmap");
}
 
開發者ID:enricopal,項目名稱:STEM,代碼行數:33,代碼來源:MapDBBlockingDatabase.java

示例5: build

import org.mapdb.DBMaker; //導入方法依賴的package包/類
public MicroDB build(File path) throws IOException {
    DBMaker mapdbBuilder = DBMaker.newFileDB(path);
    if(mCacheSize != null) {
        mapdbBuilder.cacheSize(mCacheSize);
    }
    DB db = mapdbBuilder.make();

    MapDBDriver driver = new MapDBDriver(db);

    return new MicroDB(driver, mSchemaVersion, mCallback, mConstructorMap);

}
 
開發者ID:dinocore1,項目名稱:MicroDb,代碼行數:13,代碼來源:DBBuilder.java

示例6: MapdbStorageEngine

import org.mapdb.DBMaker; //導入方法依賴的package包/類
protected MapdbStorageEngine(DBMaker dbMaker, Serializer... serializers) {
    this.dbMaker = dbMaker;
    this.serializers = serializers;
    this.db = dbMaker.make();
}
 
開發者ID:jhendess,項目名稱:metadict,代碼行數:6,代碼來源:MapdbStorageEngine.java

示例7: onInit

import org.mapdb.DBMaker; //導入方法依賴的package包/類
@Override
public void onInit() {
	if (LOG.isTraceEnabled()) {
		LOG.trace("Initializing the '"
				+ MapDbAuthorizingRealm.class.getSimpleName() + "'.");
	}

	super.onInit();

	// create the maker of the database and create it
	final DBMaker<?> maker = DBMaker.newFileDB(location);
	maker.cacheHardRefEnable();
	maker.cacheLRUEnable();
	maker.cacheSize(1000);
	maker.closeOnJvmShutdown();
	db = maker.make();

	// create the maker for the specific maps of users and roles
	final HTreeMapMaker usersMapMaker = db.createHashMap("users");
	final HTreeMapMaker rolesMapMaker = db.createHashMap("roles");
	this.users = usersMapMaker.makeOrGet();
	this.roles = rolesMapMaker.makeOrGet();

	// disable any caching
	setCachingEnabled(false);
	setCacheManager(null);

	// add a role resolver
	setRolePermissionResolver(new RolePermissionResolver() {

		@Override
		public Collection<Permission> resolvePermissionsInRole(
				final String role) {

			final SimpleRole r = roles.get(role);
			if (r == null) {
				return null;
			} else {
				return r.getPermissions();
			}
		}
	});

	checkAdministrator();
}
 
開發者ID:pmeisen,項目名稱:dis-timeintervaldataanalyzer,代碼行數:46,代碼來源:MapDbAuthorizingRealm.java

示例8: CachingRemoteConnector

import org.mapdb.DBMaker; //導入方法依賴的package包/類
/**
 * Creates a connector that caches items read from the server
 * @param delegate the underlying connector
 * @param cacheFile a file used to cache items
 */
public CachingRemoteConnector(RemoteConnector delegate, File cacheFile) {
	super(delegate);
	
	DB db = null;
	Set<String> itemIds = null;
	Map<String, String> items = null;
	int retry = 2;
	while (retry >= 1) {
		try {
			DBMaker<?> dbMaker = DBMaker.newFileDB(cacheFile);
			dbMaker.closeOnJvmShutdown();
			db = dbMaker.make();
			
			itemIds = db.getTreeSet("itemIds");
			items = db.getHashMap("items");
			
			break;
		} catch (Throwable e) {
			--retry;
			if (retry == 1 && cacheFile.exists()) {
				//unable to open disk cache. remove it and try again.
				try {
					//close db first
					if (db != null) {
						db.close();
						db = null;
					}
				} catch (Throwable t) {
					//ignore
				}
				cacheFile.delete();
				continue;
			}
			
			//disk cache is not available. use in-memory cache
			db = null;
			itemIds = new HashSet<>();
			items = new HashMap<>();
			break;
		}
	}
	
	_db = db;
	_itemIds = itemIds;
	_items = items;
}
 
開發者ID:michel-kraemer,項目名稱:citeproc-java,代碼行數:52,代碼來源:CachingRemoteConnector.java

示例9: IdStore

import org.mapdb.DBMaker; //導入方法依賴的package包/類
public IdStore(File directory, String idName) {

        if(!directory.exists())
            directory.mkdirs();

        DBMaker dbm = DBMaker.newFileDB(new File(directory, "id_" + idName + ".db"))
                .mmapFileEnableIfSupported()
                .closeOnJvmShutdown();

        db = dbm.make();

        id = db.createAtomicLong(idName, INITIAL_VALUE);
    }
 
開發者ID:opentraffic,項目名稱:traffic-engine,代碼行數:14,代碼來源:IdStore.java


注:本文中的org.mapdb.DBMaker.make方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。