工作中的一些经验小结

控制层
返回值统一 AOP 也方便前台 AOP 统计执行时间记录日志
参数不要出现Request, Response
返回码定义 不要太细

日志打印
很多时候 生产出现问题都是客户反馈过来, 我们再去排查问题 日志就显得尤为重要
需要重现问题 很多人都是debug一遍 其实是比较费时间的, 尤其是业务逻辑复杂的时候
面对对象编程, 你面对debug编程。 有些人无论什么语言, 最后都变成了面对debug编程
总之 不要依赖debug 多依赖日志

日志记录的基本要求
能找到是那台机器 nginx
能从日志信息里面看到用户信息 log4j

哪些地方需要记录日志
1.参数打印出来(上生产后有些信息可能需要脱敏)
2.程序扭转(if里面的值) 打印出来 不用分析和猜测走得是哪个分支了
3.修改或新增必须打印
4.代码写好后 运行 看看日志时候能看得懂

异常处理
自定义异常继承RuntimeException
异常处理放在web层 业务层的异常往上抛
建议第三方接口异常 日志中记录好 返回值类型包装成和接口正常的一样
空判断是慎重 如果是上游平台传递过来的 不建议进行判断
总之加上了判空 就得测试未空的场景

工具类
定义自己的工具类 不要使用第三方的工具类 解耦 也防止不同开发者引入不同的第三方工具库 ,比较乱
工具类多用重载 更加灵活 有些参数抽取出来
总之 还是约定大于规范

原文地址:https://www.cnblogs.com/xxj0316/p/9324430.html

时间: 2024-08-30 04:40:45

工作中的一些经验小结的相关文章

工作中总结的经验之git篇

不要以为你会git,你要知道,git不是只有commit和push 由于系统分析与设计的期末Project需要团队合作开发,因此在这里想谈谈GitHub团队项目合作开发的流程: 项目创建 项目负责人在GitHub上新建一个新的项目. 创建开发分支 master分支一般用来发布稳定版本,dev分支(开发分支)用来发布开发版本. 团队成员Fork项目到个人的仓库 点击右上角的Fork,并选择个人账号,Fork团队项目到个人仓库. Clone项目到本地 打开git命令行,输入Fork项目的仓库地址,回

工作中使用case用法小结

五证合一sql语法解决办法 工作的时候,数据库里面存储某张表里面证件号码存储在不同的字段下面,然后前台需要写一个查询语句,根据数据库里面存储证件号码查询该条数据. 实际情况如下 有些部门上传数据,不是只固定填写在某个字段,也会在别的字段里面填写证件号, 举个例子:1统一社会信用代码,2组织机构代码,3工商登记码,4税务登记号,5居民身份证号 这5个证件号码,如果只取其中一个字段(比如统一社会信用代码)进行查询的话,会导致不在该字段填写证件号码的数据遗漏,就会造成数据查询不完整. 这时候,只取一个

工作中一些经验

企业网站策划拙见: 1.用户进入网站的时候,要凸显出我们企业经营的重点,思考用户进来最想要看到什么,或者我们需要让访客第一眼看到什么. 2.做了百度推广.流量监控的企业,一定要经常观察访客经常访问什么内容页面:访问什内容页面的访客最多,停留时间较长.这样我们就能知道访客最关心我们产品的哪个环节,例如 介绍页面.价格页面.服务页面.案例页面等.这样我们就可以在访客关心的页面上花更多心思,从而留住访客. 3.要学会引导访客浏览网站内容.当访客访问内容页面后,一般都是从上往下浏览.此时页面内容一定要连

分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据

原文:分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据 分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据 今天开发找我,说数据库insert不进数据,叫我看一下 他发了一个截图给我 然后我登录上服务器,发现了可疑的地方,而且这个数据库之前有一段经历 在月初的时候这个数据库曾经置疑过,启动不起来 Could not redo log record (163041:116859:5), for transaction ID (0:-1175226963), on

我实践工作中的一些软件性能测试经验分享

 首先,对所有的业务都进行性能测试是不可行,也是不现实的. (1)选取业务量较大的业务,比如某电商平台明天上午10点有个特卖会,那么这个特卖会的业务用户访问量较大,所以在上线之前要做好充分的测试验证,才能决定是否上线. (2)需要重点关注的业务,比如对应电子商务平台的用户下单,提交订单,如果在同样的时间段内某个平台生成的订单数量越少,那么对公司来说是不可容忍的. (3)选取业务量不大,但是该业务消耗系统资源的业务. (4)把用户操最常用,最频繁的操作业务拿来做测试(比如对于GIS地图的放大,

近期工作中应用Python的一些经验总结

本文由Markdown语法编辑器编辑完成. 1. Python 在来新公司前,也间断地接触过Python编程,比如医学影像处理的图像库VTK就已经有Python的实现,Paraview也可以开启Python的监测,将用户在界面上的操作录制成Python脚本,供之后再进行重复调用.在人工智能领域,Python更是应用广泛,各种深度学习的框架,都是用Python语言撰写. 进入了新公司后,除了前端是用JS实现外,其余的后端语言都是用Python实现.因此,我在近一个月的工作中,也是在边学边用Pyth

IE8+兼容经验小结(转)

IE8+兼容经验小结 January 15, 2014 最近一段时间,我都使用Flask+Bootstrap3的框架组合进行开发.本文就是在这种技术组合下,分享IE8+兼容性问题的解决方法.根据我的实践经验,如果你在写HTML/CSS时候是按照W3C推荐的方式写的,然后下面的几点都关注过,那么基本上很大一部分IE8+兼容性问题都OK了(这里的IE8+主要是指IE8,据个人目测,IE9+的渲染效果已经非常好了). 前期准备 测试IE兼容性必须要在Windows中测,而且是Win7+,因为WinXP

同行代码评审过程中的实践经验

声明:该文经我翻译后首次发表在伯乐在线上,不论什么形式的转载都请标明原处. 数百万年前,猿从树上下来,进化出了对生拇指,终于.变成了人类. 我们以相似的眼光来看下强制性代码评审(Code Review):好像是一种能在软件开发这块广阔的领域里将人类从兽里分离出来的东西. 只是,我有时候会从我们的团队成员里听到以下这种评论: "这个项目的代码评审根本就是浪费时间." "我没有时间做代码评审. " "我的项目公布延期了.都是由于我那懦弱的同事还没有做不论什么评

eclipse中使用javap工具小结

关于javap的功能,百度百科上是这么解释的: javap javap是jdk自带的一个工具,可以反编译,也可以查看java编译器生成的字节码,是分析代码的一个好工具. 简单明了,大多时候真正的开发环境为linux系统,但是在windows下开发的时候又不习惯dos窗口的化,eclipse为我们提供了 javap的详细使用: 我们能够在eclipse中使用javap工具,我们有必要了解一下在eclipse中的Variables这个东西.这个英文单词的意思是变量集合的意思,意思就是我们以某些简短的