Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 弹簧控制器逻辑_Spring_Rest_Spring Mvc - Fatal编程技术网

Spring 弹簧控制器逻辑

Spring 弹簧控制器逻辑,spring,rest,spring-mvc,Spring,Rest,Spring Mvc,我有一个关于弹簧座和控制器的问题。 我创建足球应用程序。我的应用程序在数据库中有俱乐部和球员。我有一个俱乐部的API RestController和球员的API RestController。 在俱乐部控制器中向俱乐部添加球员是一种好方法,还是我应该在球员控制器中添加球员,或者这无关紧要?哪种方式更好? 例如,在我的俱乐部控制器中,我为俱乐部创建了一些CRUD方法,我创建了通过俱乐部id从俱乐部获取/添加球员,通过俱乐部id获取/添加球员等方法。这样可以吗?还是应该在球员控制器中? 一般来说,如

我有一个关于弹簧座和控制器的问题。 我创建足球应用程序。我的应用程序在数据库中有俱乐部和球员。我有一个俱乐部的API RestController和球员的API RestController。 在俱乐部控制器中向俱乐部添加球员是一种好方法,还是我应该在球员控制器中添加球员,或者这无关紧要?哪种方式更好? 例如,在我的俱乐部控制器中,我为俱乐部创建了一些CRUD方法,我创建了通过俱乐部id从俱乐部获取/添加球员,通过俱乐部id获取/添加球员等方法。这样可以吗?还是应该在球员控制器中?
一般来说,如何考虑控制器逻辑-如何分离应用程序的连接部分?

您不应该直接从控制器访问数据库。控制器应该是您的表示层,这些crud方法应该绑定到服务使用的存储库

@控制器-接受HTTP请求并激活服务

@服务-用于您的业务逻辑

@存储库-数据访问逻辑

所以,您应该使用@Controller将数据传递给@Service,后者在@Respository CRUD操作上提供更高级别的抽象

添加了spring参考以获得更详细的解释:

@存储库

@服务

关于球员与俱乐部的关系: 从不同的角度来看,多对一和一对多实际上是相同的关系,这两种方法在技术上都是正确的。决定哪一个对你更有语义意义