Charon's Blog

Thinking will not overcome fear but action will.

如何构建一条任务链?

Java中的自动任务执行

前言 自动任务执行十分实用————前提是弄懂了执行的优先级,且不会犯低级错误。 任务链 想法 任务链解释起来很简单,无非是一环套一环 实现方式(1) 为了实现自动化执行,一个调用一个的方式看起来很简单,也很符合常理。 但如果单纯只考虑执行,而不考虑执行顺序,我们可以直接采用Spring托管的方式,让Spring帮我们托管要执行的方法————直接在@Configuration注解...

AOP

SpringMVC中的AOP思想

AOP AOP全称Aspect Oriented Programming,意为面向切面编程,也叫做面向方法编程,是通过预编译方式和运行期动态代理的方式实现不修改源代码的情况下给程序动态统一添加功能的技术。 AOP技术利用一种称为“横切”的技术,剖解开封装对象的内部,将影响多个类的公共行为封装到一个可重用的模块中,并将其命名为Aspect切面。所谓的切面,简单来说就是与业务无关,却为业务模块...

finally的执行时机

执行哪个return?

finally的用武之地 finally是被用来干嘛的呢?它是被用来结束一些正常的收尾动作或结束标识。也就是说无论怎么样,finally 都会被最后执行。 例如:一般在操作数据库时,用Jdbc连接池连接数据库后释放资源,需要 finally 来处理。再如 redis 连接,在获取连接池处理完数据的增删改查后,需要释放其连接池。 特殊情况 finally在return之前: 在执行r...

git的回滚

为什么要谨慎使用revert?

前言 因为某些原因,CodeHub上提交的代码行数超过500行后,能统计到的数据就会很难看。于是在看错了一次通知之后,我提交了530行代码。 Git的回退方式 CodeHub和其他git平台一样,提供了网页端的revert和reset操作。我并没有接触过这两种操作,于是善用翻译工具了解到,revert大概是回退的意思,而reset则看起来就不太合理。 的确,这两者都有回滚的功能,但在具体...