美文网首页
Java 开发基础规范

Java 开发基础规范

作者: 穿长裙的年代 | 来源:发表于2018-03-06 12:34 被阅读0次

    推荐 阿里巴巴 java开发手册


    Java 相关命名、规范

    • 命名:
      • Java 类名命名(用名词性单词组合)
        • 普通类名:首字母大写,需要两个、多个单词表达的,使用大驼峰命名法进行命名,eg:CategoryService
        • 抽象类名:在普通类名的基础上对其命名后加上 Abstract,eg:CategoryAbstract
        • 自定义异常类名:在普通类名的基础上对其命名后加上 Exception,eg:CategoryException
        • 队列类名:在普通类名的基础上对其命名后加上 Queue,eg:CategoryQueue
        • 后台任务类名:在普通类名的基础上对其命名后加上 Task 或 Job,eg:CategoryTask、CategoryJob
        • Servlet 类名:在普通类名的基础上对其命名后加上 Servlet,eg:CategoryServlet
        • Filter 类名:在普通类名的基础上对其命名后加上 Filter,eg:CategoryFilter
        • 工厂类名:在普通类名的基础上对其命名后加上 Factory,eg:CategoryFactory
        • 工具类名:在普通类名的基础上对其命名后加上 Util,eg:CategoryUtil
        • 测试类名:在普通类名的基础上对其命名后加上 Test,eg:CategoryServiceTest
        • 数据库访问层接口类名:在普通类名的基础上对其命名后加上 Dao,eg:CategoryDao
        • 数据库访问层实现类名:在普通类名的基础上对其命名后加上 DaoImpl,eg:CategoryDaoImpl
        • 业务层接口类名:在普通类名的基础上对其命名后加上 Service,eg:CategoryService
        • 业务层实现类名:在普通类名的基础上对其命名后加上 ServiceImpl,eg:CategoryServiceImpl
        • 控制层类名:在普通类名的基础上对其命名后加上 Controller,eg:CategoryController、CategoryAction、CategoryActivity
      • 常量名:全部字母大写,有多个单词用下划线分隔,eg:MY_AGE
      • 常规变量名:首字母小写,需要两个、多个单词表达的,使用小驼峰命名法进行命名,eg:categoryName
      • 复数变量名:首字母小写,需要两个、多个单词表达的,使用小驼峰命名法进行命名,eg:
        • List:categoryList
        • Map:categoryMap
        • Set:categorySet
      • package 名:所有单词全部小写,即使有多个单词组成,且不能使用下划线连接,或是其他任意字符连接,eg:googlebook
      • 方法参数名:首字母小写,需要两个、多个单词表达的,使用小驼峰命名法进行命名,eg:categoryName
      • 方法命名(用动词性单词开头):
        • 数据库访问层方法名
          • saveCategory()
          • deleteCategoryByObject()
          • deleteCategoryById()
          • updateCategoryByObject()
          • updateCategoryById()
          • findCategoryList()
          • findCategory()
        • 业务层方法名
          • saveCategory()
          • deleteCategoryByObject()
          • deleteCategoryById()
          • updateCategoryByObject()
          • updateCategoryById()
          • findCategoryList()
          • findCategory()
          • initCategory()
          • openConnection()
          • closeConnection()
          • writeFile()
          • readFile()
        • 视图层(JSP、FreeMarker 等)
          • categoryList
          • categoryAdd
          • categoryUpdate
          • categoryEdit
          • categoryDetail
          • categoryTree
    • 规范:
      • 当一个类有多个构造函数,或是多个同名方法,这些函数 / 方法应该按顺序出现在一起,中间不要放进其它函数 / 方法
      • 导入包的时候,import 后面不要使用通配符 * 来代替有些包的导入
      • 大括号与 if, else, for, do, while 语句一起使用,即使只有一条语句(或是空),也应该把大括号写上
      • 不要使用组合声明,比如 int a, b;
      • 需要时才声明,并尽快进行初始化
      • 注解紧跟在文档块后面,应用于类、方法和构造函数,一个注解独占一行
    • 注释:
    • 块注释
    /*
    logger.info("---------开始---------");
    SubmitOrderInfo submitOrderInfo = getSubmitOrderInfo(orderId);
    */
    
    • 行注释,只用来注释
    //ResultInfo resultInfo = orderService.orderStateUpdate(voucherNo);
    
    • 行注释,用来解释
    private int categoryId = 1; // 1 是顶级分类的 ID
    

    Mysql 相关命名、规范

    • 表名:全部小写,需要两个、多个单词表达的使用下划线隔开,eg:prd_category
    • 字段名:全部小写,需要两个、多个单词表达的使用下划线隔开,eg:category_name
    • 注释
      • - -注释示例
    • 常用数据库对象命名规则表 :
    数据库对象 对象命名前缀 习惯用法 备注
    tb_ 表名中单词使用单数长度不能超过30个字符
    主键 pk_ pk_表名 长度不能超过30个字符
    外键 fk_ fk_表名、字段名 长度不能超过30个字符
    唯一键 uk_ uk_表名、字段名 长度不能超过30个字符
    Check约束 ck_ ck_表名、字段名 长度不能超过30个字符
    索引 idx_ idx_表名、字段名 长度不能超过30个字符
    视图 v_ 长度不能超过30个字符
    触发器 tri_ 长度不能超过30个字符
    函数 func_ 长度不能超过30个字符
    序列 seq_ 长度不能超过30个字符

    • 程序 SQL 补丁文件命名,eg:
      • 20160306-update-更新所有会员密码
      • 20160312-delete-删除指定会员密码
      • 20160313-insert-新增会员数据
      • 20160315-alter-更新会员邮箱字段长度

    编码规范

    • 数据源连接:jdbc:mysql://localhost:3306/youshop?characterEncoding=utf-8
    • Java 文件编码:UTF-8
    • XML 文件编码:UTF-8
    • Properties 文件编码:UTF-8
    • Mysql 字符集:UTF-8

    其他

    • Tab 缩进为 4 个空格,使用 IntelliJ IDEA 标准格式化即可
    • TODO 标记必须使用个人自定义 TODO,不能使用公共的
    • SVN、Git 提交必须有 Commit Message

    本文摘自:YouMeek

    相关文章

      网友评论

          本文标题:Java 开发基础规范

          本文链接:https://www.haomeiwen.com/subject/wamhfftx.html