发表于: 2017-11-07 21:59:45

3 663


今天完成的事情:

代码生成终于快弄完了。。。明天争取开始写接口

准备了一下小课堂,也没什么实质性的东西

java开发代码规范(咱们公司的)

列一下我不太了解的

抛出异常的约定 

  1. 1、只允许和必须抛出ServiceException和ServiceDaoException两种异常,不允许抛出其他种类的异常
  2. 2、如果接口不允许参数为null,但传入的参数为null时不必抛出异常,只要记录错误日志,并返回空值或者false就可以了

日志记录 

1、对于关键操作要记录参数和调用信息的日志

2、在最初捕捉到或抛出异常的地方记录日志,日志的内容包括:参数信息和异常的堆栈信息

3、如无必要,不需要打出Lsit、BigModel的详细信息,仅列出Size和ID即可

程序注释的建议 

日期 

1、Long是8个字节.Date是32个字节,Long占用更少的内存,转成其它格式更方便.因此关于日期的存储,请使用Long,而不是Date

  1. 2、如果在Jsp里需要显示时间格式,请丰富并使用我们自己的Jsp-Tag

错误信息 

  1. 1、不要在Java代码里写入任何错误信息,只返回错误标志.错误信息要么写在配置文件里,要么直接在Jsp里写入.

Service实现 

  1. 1、基本原则是每张表对应一个Serivce.可以适当减少Service的数目,但是一定要保证Service功能的高内聚.
  2. 2、对于最常用的Service组合,可以提供一个CompositeService来做Serivce的组合处理. 
  3. 3、Service的实现逻辑要简单清晰.通常在十行以内. 

 Controller

  1. 1、controller中接口首先要将收到的参数用日志全部打出来,便于查找异常
  2. 2、controller中对数据库进行操作时,一般说来都需要用try...catch捕捉异常,并且将日志打出来,有可能出现空指针的地方需要进行判断
  3. 3、修改状态接口,不应该使用开关机的方式,如:/cardType/{id}/status。应该明确传入并做好判断       如:/cardType/{id}/status/{status},如果状态一致则不对数据库做修改
  4. 4、所有接口,不应该开放所有权限给前端操作,风险会较大,可能产生脏数据。

如何选择字段的数据类型

(1)越小的数据类型通常更好:越小的数据类型通常在磁盘、内存和CPU缓存中都需要更少的空间,处理起来更快。
(2)简单的数据类型更好:整型数据比起字符,处理开销更小,因为字符串的比较更复杂。在MySQL中,应该用内置的日期和时间数据类型,而不是用字符串来存储时间;以及用整型数据类型存储IP地址。
(3)尽量避免NULL:应该指定列为NOT NULL,除非你想存储NULL。在MySQL中,含有空值的列很难进行查询优化,因为它们使得索引、索引的统计信息以及比较运算更加复杂。你应该用0、一个特殊的值或者一个空串代替空值。


明天计划的事情:

跑项目

收获:

这篇文章挺好的

https://zhuanlan.zhihu.com/p/30742986



返回列表 返回列表
评论

    分享到