对于新增/修改,返回结果需不需要数据结果,还是直接返回true?
这取决于业务系统操作的连续性,如果在一个前台页面有一系列完整的操作,返回数据更好.
对于无法执行的操作,返回操作失败异常还是false?
最好是返回异常,利用Optional.orElseThrow()和全局异常处理,比如修改传入的ID是非法的.
业务数据操作
对于多租户系统而言,单一数据操作如果仅通过主键ID并不可靠,最好通过继承的方式将租户的ID都写入到具体的业务表,然后操作的时候增加该条件.
用户信息
可以自定义一个用户上下文对象,方便取值.
都放是最可靠的,尤其是可能存在NPE的代码,因为service的method可能被多个地方调用.
controller中可使用Spring Validated完成校验.
对于restful风格的接口而言,可能需要get接口完成分页查询,对于条件不多的,可以用get和query param实现,后台分别用两个vo接收(pageVO/dataVO),对于条件较多的查询来说,get请求参数不够直观,可以使用post,仅将page信息放置于query param或 path param
原文:https://www.cnblogs.com/RaynorZ/p/14923676.html