转载须注明出自:http://blog.csdn.net/minimicall?viewmode=contents,http://cloudtrader.top
货币,Cointrader中基本实体。我们通过代码来学习该实体:
package org.cryptocoinpartners.schema; import java.util.List; import javax.persistence.Cacheable; import javax.persistence.Entity; import javax.persistence.NoResultException; import org.cryptocoinpartners.util.PersistUtil; /** * @author Tim Olson */ @Entity //实体 @Cacheable public class Currency extends Asset {//货币是资产的一种,继承关系 public boolean isFiat() {//是否为法定货币 return fiat; } public static Currency forSymbol(String symbol) { return PersistUtil.queryOne(Currency.class, "select c from Currency c where symbol=?1", symbol); } public static List<String> allSymbols() { return PersistUtil.queryList(String.class, "select symbol from Currency"); } // JPA protected Currency() { } protected void setFiat(boolean fiat) { this.fiat = fiat; } // used by Currencies static Currency forSymbolOrCreate(String symbol, boolean isFiat, double basis) { try { return forSymbol(symbol); } catch (NoResultException e) { final Currency currency = new Currency(isFiat, symbol, basis); PersistUtil.insert(currency); return currency; } } // used by Currencies static Currency forSymbolOrCreate(String symbol, boolean isFiat, double basis, double multiplier) { try { return forSymbol(symbol); } catch (NoResultException e) { final Currency currency = new Currency(isFiat, symbol, basis, multiplier); PersistUtil.insert(currency); return currency; } } private Currency(boolean fiat, String symbol, double basis) { super(symbol, basis); this.fiat = fiat; } private Currency(boolean fiat, String symbol, double basis, double multiplier) { super(symbol, basis); this.fiat = fiat; this.multiplier = multiplier; } private boolean fiat;//是否为法定货币 private double multiplier;//乘数 }
multiplier乘数是一个比较生疏的一个概念。它的介绍见wikipedia: http://en.wikipedia.org/wiki/Multiplier_(economics)
还是一个比较难的概念。