我有从CrudRepository扩展的User Repository,如下所示
public interface UserRepository extends CrudRepository<User, Long>, DatatablesCriteriasRepository<User>
DatatablesCriteriasRepository
具有需要针对不同存储库分别实现的功能。
因此,我创建了这样的存储库实现类。在impl
包装中。
public class UserRepositoryImpl implements DatatablesCriteriasRepository<User>
请注意,这仅用于实现功能DatatablesCriteriasRepository
。我不想覆盖CrudRepository
该框架中提供的默认功能。
但如果我这样做,它会更适合在代码设计,UserRepositoryImpl
真正实现UserRepository
顾名思义。
public class UserRepositoryImpl implements UserRepository
但这又将迫使我扩展UserRepository接口中的所有功能。如何通过良好的代码设计解决此问题?
实现时可以使用UserRepositoryImpl
这个名称DatatablesCriteriasRepository
吗?
Spring的存储库定制实现文档提供了@JBNizet向我指出的实现该方法的方法。
从文档中摘录如下。
定制存储库功能的界面
interface UserRepositoryCustom {
public void someCustomMethod(User user);
}
定制存储库功能的实现
class UserRepositoryImpl implements UserRepositoryCustom {
public void someCustomMethod(User user) {
// Your custom implementation
}
}
对基本存储库界面的更改
interface UserRepository extends CrudRepository<User, Long>, UserRepositoryCustom {
// Declare query methods here
}
本文向大家介绍设计微服务的最佳实践是什么?相关面试题,主要包含被问及设计微服务的最佳实践是什么?时的应答技巧和注意事项,需要的朋友参考一下 以下是设计微服务的最佳实践: 为每个微服务分开数据存储 将代码保持在类似的成熟度等级上 为每个微服务进行单独的构建 部署到容器中 将服务器视为无状态的
问题内容: 我有一个使用 像素 渲染页面的网站。但是,当我在具有不同屏幕分辨率的不同设备中查看网站时, 整个页面将无法容纳在屏幕中 ,如果我使用 百分比 ,页面内容将会 受到挤压 。 是响应式网页设计是设计网页的正确选择。如果是这样,我几乎不用担心。 将现有网站转换为包含响应式设计所涉及的风险是什么? 有没有可用的框架来做到这一点,哪个是最好的框架 设备和浏览器如何支持它 问题答案: 使用媒体查询
问题内容: 我的快速搜索显示了参考实现(http://stax.codehaus.org),Woodstox实现(http://woodstox.codehaus.org)和Sun的SJSXP实现(https://sjsxp.dev.java.net / )。 请评论它们的相对优点,并让我介绍我应考虑的任何其他实现。 问题答案: 伍德斯托克斯为我赢得了每一次胜利。这不仅是性能,而且-sjsxp抽搐
我试图使用Kotlin实现干净的架构。这一过程的流程将是: 代码示例:
在解释我的问题之前,我应该做一些理论... 对于车辆,我指的是所有可以通过公路运输货物的东西:轿车、货车、卡车、拖车(或公路列车,我不知道正确的术语)、半拖车(也称为铰接式卡车或牵引拖车)。 关于汽车,货车和卡车,没有问题:它们具有板块,可运输的重量和体积以及其他数据。 但是另外两辆车更复杂。它们可能有一个额外的车牌和其他额外的数据。特别是: > 半挂车卡车(也称为牵引拖车)是一种复杂的车辆,由道
我们最近讨论了如何删除我们可能拥有的任何循环导入,并重构我们的代码以不再在函数中使用导入。 在许多地方(包括这里的PEP-8风格指南-在imports下)推荐的方法之一是使用: 而不是: 我看到了一些例子,并且确信这可能是一种更好的导入方式(尽管我已经习惯了< code>from的导入方式)。 但我不明白为什么 99% 的 python 示例不使用这种导入方式。以及为什么我的 pycharm 不允