Spring Cloud Spring Data Repositories
2024-01-11 14:55 更新
Spring Data Repositories是一种功能强大的抽象,可以节省许多样板代码。
例如:
public interface TraderRepository extends SpannerRepository<Trader, String> { }
Spring Data生成指定接口的有效实现,可以方便地将其自动连接到应用程序中。
SpannerRepository
的Trader
类型参数引用基础域类型。第二种类型参数String
在这种情况下是指域类型的键的类型。
对于具有复合主键的POJO,此ID类型参数可以是与所有主键属性兼容的Object[]
的任何后代,Iterable
或com.google.cloud.spanner.Key
的任何后代。如果域POJO类型只有一个主键列,则可以使用主键属性类型,也可以使用Key
类型。
例如,在属于交易者的交易中,TradeRepository
看起来像这样:
public interface TradeRepository extends SpannerRepository<Trade, String[]> { }
public class MyApplication { @Autowired SpannerTemplate spannerTemplate; @Autowired StudentRepository studentRepository; public void demo() { this.tradeRepository.deleteAll(); String traderId = "demo_trader"; Trade t = new Trade(); t.symbol = stock; t.action = action; t.traderId = traderId; t.price = 100.0; t.shares = 12345.6; this.spannerTemplate.insert(t); Iterable<Trade> allTrades = this.tradeRepository.findAll(); int count = this.tradeRepository.countByAction("BUY"); } }
以上内容是否对您有帮助:
更多建议: