当前位置: 首页 > news >正文

极速网站建设定制费用wordpress导航模板下载

极速网站建设定制费用,wordpress导航模板下载,没有网怎么装wordpress,vultr部署wordpress我最近写了几篇有关Kotlin代表团的文章。 通过这样做#xff0c;我实现了一种将其应用于Spring Data存储库的有用方法。 这将使Spring Data在提供定制路线的同时继续散布一些魔力。 这篇文章中显示的代码在Kotlin中#xff0c;但仍然与Java有关。 这篇文章使用R2DBC#xf… 我最近写了几篇有关Kotlin代表团的文章。 通过这样做我实现了一种将其应用于Spring Data存储库的有用方法。 这将使Spring Data在提供定制路线的同时继续散布一些魔力。 这篇文章中显示的代码在Kotlin中但仍然与Java有关。 这篇文章使用R2DBC但是内容足够通用可以应用于任何Spring Data模块。 如果您在这些领域没有太多的背景知识那么在Kotlin中 使用Spring Data R2DBC和类委托读取异步RDBMS访问将是有益的。 作为回顾。 Spring Data提供的魔力是什么 Spring Data允许您编写一个仅需要定义所需查询的接口。 然后它将完成创建实现和为您注入依赖项的所有工作。 看起来像这样 Repository interface PersonRepository : R2dbcRepositoryPerson, Int { Query ( SELECT * FROM people WHERE age $1 ) fun findAllByAgeGreaterThan(age: Int): FluxPerson } 由于正在使用Spring Data R2DBC因此尚不完全支持完全推断的查询。 这就是为什么手动写出查询的原因。 不利的一面是它正在基于接口创建实现。 因此如果要进行任何类型的自定义则需要自己创建接口的实例注入其依赖关系并实现每个查询。 例如 class PersonRepositoryImpl( private val entity: RelationalEntityInformationPerson, Int, private val databaseClient: DatabaseClient, converter: R2dbcConverter, private val accessStrategy: ReactiveDataAccessStrategy ) : SimpleR2dbcRepositoryPerson, Int(entity, databaseClient, converter, accessStrategy), PersonRepository { override fun findAllByAgeGreaterThan(age: Int): FluxPerson { val mapper: StatementMapper.TypedStatementMapperPerson accessStrategy.statementMapper.forType(entity.javaType) val selectSpec: StatementMapper.SelectSpec mapper .createSelect(entity.tableName) .withProjection(accessStrategy.getAllColumns(entity.javaType)) .withCriteria(Criteria.where( age ).greaterThan(age)) val operation: PreparedOperation* mapper.getMappedObject(selectSpec) return databaseClient.execute().sql(operation).as(entity.javaType).fetch().all() } } 是的该查询代码可能很糟糕我相信您可以做得更好。 你明白我的意思。 可以通过委派基于您的接口实现的Spring仓库来消除创建此类的麻烦。 然后您可以添加所需的所有自定义。 在Kotlin中这看起来像 Repository class DelegatingPersonRepository( private val delegate: PersonRepository) : PersonRepository by delegate { override fun S : Person save(objectToSave: S): MonoS { // override save implementation } // any other overrides (kotlin provides delegated implementations) } 在Java中这比较麻烦但仍然可以轻松实现 Repository public class DelegatingPersonRepository implements PersonRepository { private final PersonRepository delegate; public DelegatingPersonRepository(PersonRepository delegate) { this .delegate delegate; } Override public FluxPerson findAllByAgeGreaterThan( int age) { return delegate.findAllByAgeGreaterThan(age); } Override public S extends Person MonoS save(S entity) { // override save implementation } // all other implementations of PersonRepository functions } 在这两个版本中 DelegatingPersonRepository调用PersonRepository定义的findAllByAgeGreaterThan的实现。 到目前为止还没有直接花费精力来编写查询数据库的功能。 使用DelegatingPersonRepository 所有未覆盖的函数调用将委托给Spring创建的PersonRepository的实现。 对于像我这样的人他真的不喜欢将SQL查询放在一起并编写所有转换代码。 通过这种方式使用委派确实可以使您充分利用Spring Data的优势同时仍然为您提供自定义结果的空间。 您节省的代码量实际上可能不是那么大。 但是将其组合在一起所需的工作量大大减少了。 让Spring为您完成所有繁重的工作 翻译自: https://www.javacodegeeks.com/2019/09/augmenting-spring-data-repository-delegation.html
http://www.pierceye.com/news/511666/

相关文章:

  • 专业网站建设推广网络营销推广方法和手段有哪些
  • 莘县做网站推广2345浏览器官方网站
  • 深圳网站建设公司为什mrskinlove wordpress
  • html 网站建设中模板网络营销推广与策划
  • 企业管理网站模板asp.net做电商网站设计
  • 萧山建站wordpress主题机制
  • ps可以做网站动态图网页设计参考板式
  • 温州集团网站建设西昌市网站建设公司
  • 奇想网站建设wordpress分页调用代码
  • 站点推广名词解释管理培训课程
  • 做一个网站 多少钱成都到西安
  • 哪个网站做外贸好平面设计广告作品
  • 兰州专业做网站产品网站做营销推广
  • 唐山做网站哪家好闸北手机网站建设
  • 网站建设作业百度云资源展厅设计搭建
  • 阿里巴巴网址惠州seo全网营销
  • 阳江网站设计公司兰州新区建站
  • 3d网站建设免费网站注册申请
  • 门户网站建设方案模板那个做我女朋友的网站
  • 网站建设新手教程视频英语复试口语模板
  • 网站肯定被k北京高端网站建
  • 成都手机网站设计山东省建设监理协会网站6
  • 长春网站建设那家好沛县做网站
  • 做网络写手 哪个网站比较好电商网站开发用什么语言
  • 如何做网站资讯淘宝官网登录入口
  • 江苏建设工程招标网官方网站免费网址怎么申请注册
  • 河池网站优化网络宣传渠道有哪些
  • 外贸建立网站怎么做42区 网站开发指南
  • wordpress多本小说站出售延安做网站
  • 北京快速网站建设找工作一般上什么网站比较好