当前位置: 首页 > 知识库问答 >
问题:

包装结构化Spring项目的最佳实践是什么?

柳涵意
2023-03-14

我有spring云项目和per microservice,我想我有很多包。我还有一个模型包,它包含实体和自定义请求-响应对象。

问题1:实体类包名称必须是什么?实体还是模型?

问题2:必须保存搜索请求的位置

问题3:退出一些包结构化的标准?(请给我链接)

共有3个答案

章烨烨
2023-03-14

创建包是免费的,所以不要担心创建很多包。创建包的目的是组织代码并划分一些职责或上下文。

问题1:实体类包名称必须是什么?实体还是模型?

在选择更好的名称之前,您需要了解这两者之间的区别:

模型对象表示MVC(模型视图控制器)模式中的数据。实体对象表示ORM(对象关系映射)模式中的数据。它们可能是同一个物体。或者不是。

因此,您可以将实体用作模型类,即使我认为这是一种不好的做法。如果这是你的情况,也许你更喜欢使用Model作为包名称。如果没有,实体是正确的选择。

问题2:必须保存搜索请求的位置

这些类与控制器包密切相关。因此,您可以创建这两个包,并将请求和响应放在那里,每个都放在他的包中:

controller.response
controller.request

问题3:退出一些包结构化的标准?(请给我链接)

看看这个答案:是否有(Java)包组织的最佳实践?

阎宾实
2023-03-14

>

  • 数据库表的包名应该是实体。

    这就是为什么?

    对于Q2和Q3封装结构

    希望这有助于,让我知道:)

  • 秦才
    2023-03-14

    没有具体的标准结构,它将根据您的需要而变化。

    1. 实体类应该在域包下,域包不需要附加类名。它可以像书一样。班级,学校。班级等等

    大多数情况下,服务包将包含所有具有业务逻辑并与DAO类连接的服务类,控制器将包含所有剩余endpoint,模型包将包含pojo类。

     类似资料:
    • 问题内容: 我知道实际上没有唯一正确的方法。但是,我发现很难创建一个可以正常工作并且对每个开发人员和管理员都保持整洁的目录结构。github上的大多数项目都有一些标准结构。但是它没有显示在PC上组织另一个文件和所有项目的方法。 在开发机器上组织所有这些目录的最便捷方法是什么?你如何命名它们,以及如何连接并将其部署到服务器? 项目(你正在处理的所有项目) 源文件(应用程序本身) 存储库的工作副本(我

    • 问题内容: 想象一下,你想使用Python开发非平凡的最终用户桌面(非Web)应用程序。构造项目文件夹层次结构的最佳方法是什么? 理想的功能是易于维护,IDE友好,适用于源代码控制分支/合并以及易于生成安装软件包。 尤其是: 你将源放在哪里? 你将应用程序启动脚本放在哪里? 你将IDE项目放在哪里? 你将单元/验收测试放在哪里? 你将非Python数据(例如配置文件)放在哪里? 你在哪里将非Pyt

    • 问题内容: 我刚开始学习Go,并通读现有代码以学习“其他人的做法”。在这种情况下,遍历使用go“工作区”,尤其是与项目依赖关系有关的地方。 在处理各种Go项目时,使用一个或多个Go工作区(即$ GOPATH的定义)的常见(或存在)最佳实践是什么?我应该期望有一个类似于我所有项目的中央代码存储库的Go工作区,还是在我处理这些项目时都明确将其分解并设置$ GOPATH(有点像python) virtu

    • 问题内容: 我需要将一个复杂的项目从sqlite迁移到PostgreSQL。很多人似乎对外键,数据截断等存在问题。 有全自动的工具吗? 迁移之前是否需要检查一些数据或架构? 问题答案: 我的经验,从SQL转储和还原无法正常工作。 你应该遵循以下顺序: 1.将数据库内容转储到json 2.在settings.py中切换后端 Syncdb并将新数据库迁移到相同的表结构 4.将json加载到新数据库。

    • 总的来说,我对RESTful web服务是新手,正在学习web服务的Spring实现。 我特别感兴趣的是学习如何在我的大多数用例中正确地使用ResponseEntity返回类型。

    • 问题内容: 我正在构建一个基于expressjs的应用程序,我想在其中记录所有事件。我可以找到温斯顿,这似乎很酷。无论如何,我正在寻找一种方法将其连接到我的expressjs应用程序。 我还想要在应用程序内部登录。我的要求不是那么简单,所以我想将所有内容记录在我的应用程序中(不仅是请求)。 我目前的情况: server.js (我想在此级别记录http请求) 路线/something.js con

    • 我有一个Spring mvc项目,有Spring data、jpa和hibernate。我有一个多语言数据库。我设计了我的数据库和实体。我正在寻找一种按语言查询表的最佳实践。我必须编写自定义jpa查询吗,或者有一种通用的方法来查询我的表。 如果我在数据库或实体设计上有错误,请警告我。 数据库: 本地化字符串实体: 多语言字符串实体: 类别实体: 类别存储库: 我怎么能传递一个语言参数到并获得该语言

    • 我想用Spring Boot和JWT开始一个项目。我看到了一些将刷新令牌保存在数据库中的示例。我是否必须将刷新令牌插入数据库,或者我是否有其他最佳实践方法? 如果我必须插入数据库,以删除过期的令牌,我应该在Spring中创建一个作业吗?