31
2019
05

开发程序员如何写日志才能提高效率

开发程序员如何写日志才能提高效率开发中日志这个问题,每个公司都强调,也制定了一大堆规范,但根据实际情况看,效果不是很明显,主要是这个东西不好测试和考核,没有日志功能一样跑啊。开发久了,总会遇到“这个问题生产环境上能重现,但是没有日志,业务很复杂,不知道哪一步出错了?” 这个时候,怎么办? 还能怎么办,发个版本,就是把所有地方加上日志,没有任何新功能,然后在让用户重现一遍,拿下日志来看,哦,原来是这个问题。有没有很熟悉的感觉?还有一种情况,我们系统有3*5=15个节点,出了问题找日志真是痛苦,一个
31
2019
05

对日志规范的思考

对日志规范的思考系统上线之后,一旦发生异常,第一件事就是要弄清楚当时发生了什么,用户当时做了什么操作,环境有无影响,数据有什么变化,是不是反复发生等,然后再进一步的确定大致是哪个方面的问题。这时,日志就给我们提供了第一手的资料。基本原则1.不影响系统正常运行;2.不允许产生安全问题;3.不允许输出机密信息;4.日志可供开发人员定位问题的真正原因;5.日志可供监控系统自动监控与分析;日志级别     ERROR:系统发生了错误事件,但仍然不影响系统的继续运行。系统需要
31
2019
05

小结开发程序员的日志规则有那些呢?

小结开发程序员的日志规则有那些呢?对象声明:建议使用private static final。声明为private可防止logger对象被其他类非法使用。声明为static可防止重复new出logger对象,造成还可以防止logger被序列化,造成安全风险。声明为final是因为在类的生命周期内无需变更logger。使用API:统一使用 slf4j,它本质是Facade, 便于我们后期随时切换日志实现。避免在代码中直接使用log4j或java logging 等实现类语言:最好在打印日志时输出英
30
2019
05

制作AOP简单示例

一个简单的例子实现自己的AOP贴一个简单的controller。#为什么不用ExceptionHandler很多人说为什么不用 ControllerAdvice + ExceptionHandler 来处理异常?首先,这2这都是AOP,本质上没有啥区别。而最重要的是ExceptionHandler只能处理异常,而我们的AOP除了处理异常,还有一个很重要的作用是打印日志,统计每一个controller方法的耗时,这在实际工作中也非常重要和有用的特性!就算你使用ExceptionHandler,也不
30
2019
05

AOP实现异常归纳

AOP实现异常归纳AOP实现:我们需要在AOP里面统一处理异常,包装成相同的对象ResultBean给前台。# ResultBean定义ResultBean定义带泛型,使用了lombok。AOP实现:AOP代码,主要就是打印日志和捕获异常,异常要区分已知异常和未知异常,其中未知的异常是我们重点关注的,可以做一些邮件通知啥的,已知异常可以再细分一下,可以不同的异常返回不同的返回码:其实,对于未知异常,给相关责任人发送邮件通知,第一时间知道异常,实际工作中非常有意义。# 返回码定义关于怎么样定义返回
30
2019
05

Controller规范的注意问题归类

Controller规范的注意问题归类Controller规范,主要的内容是就是接口定义里面的内容,你只要遵循里面的规范,controller就问题不大,除了这些,还有另外的几点:# 统一返回ResultBean对象所有函数返回统一的ResultBean/PageResultBean格式,原因见我的接口定义这个贴。没有统一格式,AOP无法玩,更加重要的是前台代码很不好写。当然类名你可以按照自己喜好随便定义,如就叫Result。大家都知道,前台代码很难写好做到重用,而我们返回相同数据结构
29
2019
05

接口定义常见问题 什么是接口?

接口定义常见问题 什么是接口?Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口我们可以认为本质也是一个类,只是修饰符改为了interface,类的修饰符是Class而已。那么接口是干嘛呢?接口作用如下:1、丰富Java面向对象的思想:在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了J
29
2019
05

JavaSE如何制作帮助文档

JavaSE如何制作帮助文档:一、首先自己制作帮助文档(工具类)构造方法私有化:成员方法静态化只能通过类名调用,不能创建新对象Javadoc--文档工具:格式:javadoc -d 目录 -author -version 文件名.java文档工具只解析public 和protected修饰的二、然后如何查看帮助文档?举例:Math类   1.关注包: java.lang 不需要导包;如果不是这个包,就需要导包   2.关注类的定义, 关注继承关系等信息:p
29
2019
05

你知道Java SE是干什么用的吗?

你知道Java SE是干什么用的吗?Java SE是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算,从此Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。Java分为JavaME 、JavaSE、 JavaEE 1.Java SE(Java Platform,St