How to share Repository and Service classes between 2 projects(如何在两个项目之间共享存储库和服务类)
问题描述
我正在做两个项目,一个Web应用程序(Spring MVC)和一个独立的后端服务应用程序(Spring Boot),它们大量交互在一起。我对这两个都使用了Hibernate,并且它们都是使用NetBeans IDE编写的。
我的"问题"是,我最终在两个项目中都得到了重复的代码,主要是在存储库和服务层。我的实体显然也是重复的,因为两个项目使用相同的数据库。
有没有办法制作某种类库(可能是第三个项目?)然后把所有常见的代码都放进去?如果这确实是可能的,那么如何更改每个项目,以便他们仍然可以访问这些代码,就像它是他们的一部分一样?我正在考虑将我所有的存储库、服务和实体放在其中,以避免代码重复并极大地降低出错风险。
谢谢!
推荐答案
将这些Repository
和Service
类分隔到子模块。
结构如下:
-- your app
-- api (dependent on `common` module)
-- webapp (dependent on `common` module)
-- common
那么问题就是在公共模块内初始化Bean。AFAIK,您有两个选项:
- 在
api
或webapp
模块的@Configuration
类中,将common
模块的基包添加到组件扫描包 在api
或webapp
资源文件夹中,添加Spring配置工厂 /src/main/Resources/META-INF/spring.Factory Org.springframework.boot.autoconfigure.EnableAutoConfiguration=your.path.AutoConfiguration在
AutoConfiguration
类内部@Bean
定义服务/存储库
这篇关于如何在两个项目之间共享存储库和服务类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在两个项目之间共享存储库和服务类
基础教程推荐
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01