IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 阿里巴巴Java开发手册笔记 -> 正文阅读

[Java知识库]阿里巴巴Java开发手册笔记

  • 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束;
  • 类名使用UpperCamelCase风格,方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式;
  • 常量命名全部大写,用下划线隔开;
  • 抽象类命名使用Abstract或Base开头;异常类命名使用Exception结尾;测试类命名以它要测试的类名开始,以Test结尾;
  • POJO类中布尔类型的变量都不要加is前缀,否则部分框架会引起序列化错误;
  • 如果模块、类、方法使用了设计模式,应在命名时体现出具体模式;
  • 接口类中的方法和属性不要加任何修饰符号(public也不要加),保持代码的间接性,并加上有效的javadoc注释。尽量不要在接口里定义变量,如果一定要定义变量,必须是与接口方法相关的,并且是整个应用的基础变量;
  • 对于Service和Dao类,基于SOA的理念,暴露出来的服务一定是接口,内部的实现类用Impl后缀和接口区别;
  • 如果是形容能力的接口名称,取对应的形容词为接口名(通常是-able的形式);
  • long或者Long初始赋值时,使用大写的L,不能是小写的l;
  • 不要使用一个常量类维护所有变量,要按常量功能进行归类,分开维护;
  • 方法参数在定义和传入时,多个参数都好后边必须加空格;
  • 所有的重写方法,必须加@Override注解;
  • 所有相同类型的包装类对象之间的比较,全部使用equals方法;
  • POJO类必须写toString方法,在使用IDE的工具source->generate toString时,如果继承了另一个POJO类,注意在前面加一个super.toString;
  • 不要在foreach循环里进行元素的remove/add操作,remove元素轻使用Iterator方式,如果并发操作,需要对Iterator对象加锁;
  • 高度注意Map类集合K/V嫩不能存储null值的情况;
    在这里插入图片描述
  • 线程资源必须通过线程池提供,不允许在应用中自行显示创建线程;
  • 在if / else / for / while / do语句中,必须使用大括号,即使只有一行代码,也应该避免使用单抗的编码方式;
  • 在高并发场景中,避免使用“等于”判断作为终端或退出的条件;
  • 在表达异常的分支时,尽量少用if-else方式;
  • 类、类属性、类方法的注释必须使用Javadoc规范,使用/**内容*/格式,不得使用//xxx方式;
  • 所有的抽象方法(包括接口中的方法)必须要用Javadoc注释,除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能;
  • 所有的类都必须添加创建者和创建日期;
  • 后台输送给网页的变量必须加$!{var}–中间是感叹号;
  • 注意Math.random()这个方法返回的是double类型,取值范围 0 ≤ x < 1 0\le{x}\lt{1} 0x<1(能够取到零值,注意除零异常),如果想获取整数类型的随机数,不要将x放大10的若干倍然后取整,应该直接使用Random对象的nextInt或者nextLong方法;
  • 不要在视图模板中加入任何复杂的逻辑;
  • 隶属于用户个人的页面或者功能必须进行权限控制校验;
  • 用户敏感数据禁止直接展示,必须对展示数据进行脱敏;
  • 用户输入的SQL参数严格使用参数绑定或者METADATA字段值绑定,防止SQL注入,禁止字符串拼接SQL访问数据库。
  • 用户请求传入的任何参数必须做有效性验证;
  • 禁止向HTML页面输出未经安全过滤或未正确转义的用户数据;
  • 表单、AJAX提交必须执行CSRF安全过滤
  • 在使用平台资源,譬如短信、邮件、电话、下单、支付,必须实现正确的防重放限制,如数量限制、疲劳度限制、验证码校验,避免被滥刷、资损。
    在这里插入图片描述
  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-01-14 01:50:01  更:2022-01-14 01:51:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:58:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码