首页 > javaEE 验证是放在dao,service还是controller层

javaEE 验证是放在dao,service还是controller层

比添加用户,我要先检查用户是否存在,这个是放在哪个层好?

如果放在dao或者service层,异常要每层都写?如果是放在controller,那每一个要用到的地方都需要先检查?


个人认为应该是放在controller,数据的检验越早越好,避免程序做无用功,并且你可以把检验抽成一个方法,需要的地方调用一下这个方法就好了。


如果你真的分了3个层去做而且要严格的要求必须分层写!那么应该放到service,因为添加用户前检查这个用户是否存在这是业务逻辑,但实际上大多数可能都不是这样做的,其实没有什么对不对的,框架设计出来是给人用起来便利准备的,不要太拘泥了。不过如果是公司的项目规范那就没办法了,每层可能都是不同组的人去开发,必须分配清楚


这个其实还是需要,看具体的需求的。

  1. 当你这个Service需要提供给外部模块调用的话,那么校验是需要放在Service层的。
    但是如果是本模块调用,并且调用的地方只有一个,那么在controller校验一下就好了。
  2. 还有就是需要考虑这个Service调用的频率高不高。举个例子,如果这个Service是单独部署在一台服务器上的,而且调用这个Service很频繁,并且这个校验很耗性能,那么可以考虑把这些校验放在客户端而不是服务端。
    个人观点。
【热门文章】
【热门文章】