规范
zl1zl2zl3
这个作者很懒,什么都没留下…
展开
-
为什么阿里巴巴规定禁止超过三张表 join?
最近,在知乎上看到一个有意思的问题,我个人觉得不错,挺有收获,在这里跟大家分享一下。题目:《阿里巴巴JAVA开发手册》里面写超过三张表禁止join 这是为什么?这样的话那sql要怎么写?一般,我对于这种问题,解决方案是查询官方文档,要么查看我的工具书《高性能的MySQL》,在本书的6.3节:重构查询的方式里面提到,需要考虑实际情况,看看是否有必要将一个复杂的查询分解成多个简单的查询,并不一定要把所有的工作全都移交给数据库(转换思路)!!!其实Join拆解的核心就是利用In关键字,这个也是转载 2020-08-06 09:41:16 · 500 阅读 · 0 评论 -
为什么阿里巴巴禁止使用Apache Beanutils进行属性的copy?
在日常开发中,我们经常需要给对象进行赋值,通常会调用其set/get方法,有些时候,如果我们要转换的两个对象之间属性大致相同,会考虑使用属性拷贝工具进行。如我们经常在代码中会对一个数据结构封装成DO、SDO、DTO、VO等,而这些Bean中的大部分属性都是一样的,所以使用属性拷贝类工具可以帮助我们节省大量的set和get操作。市面上有很多类似的工具类,比较常用的有1、Spring BeanUtils2、Cglib BeanCopier3、Apache BeanUtils4、Ap...转载 2020-07-29 10:19:22 · 447 阅读 · 0 评论 -
阿里巴巴为什么要禁止使用存储过程?
之所以有这个题目,我既不是故意吸引眼球,也不想在本文对存储过程进行教科书般论述。《阿里巴巴Java开发手册》是这样规定的:再结合我最近项目中遇到的存储过程问题,所以今天我打算来聊一聊这个问题。需要这份最新完整手册的去关注微信公众号Java技术栈在后台回复手册获取。这事儿要从去年在武汉出差时一位同事的发问说起,问题是这样的:我觉得存储过程挺好用的,你为什么不建议用呢?当时我好似胸有万言,但终究没用一个实在的例子回答同事,只是从结论上大侃一通,代码相对于SQL,复用、扩展、通用性都要更强转载 2020-05-13 17:37:34 · 619 阅读 · 0 评论 -
华为 Java 编程军规
1、引言这个标准是衡量代码本身的缺陷,也是衡量一个研发人员本身的价值。华为作为一家全球化的 IT 公司,十几万员工,无论是人事管理,还是代码管理,都是一件不容易的事情,没有规范的约束,想想都是件可怕的事情。下面挑选了一些网上流传的编程规范,一起来学习下,以下内容不涉及基础的语法规范(请见 Refer),更侧重于一些编程习惯,如何提高程序的健壮性、可维护性等。(PS:以下内容未经官方考证,如阅读...转载 2019-03-06 09:37:47 · 339 阅读 · 0 评论