
Java
编程语言
xiaoping.huang
这个作者很懒,什么都没留下…
展开
-
借助ApplicationListener进行Quartz和SpringBoot整合
前言网上搜索各种博客案例我们可以发现大多数Quartz和Spring的整合都是借助spring的xml配置文件来定义各种bean(Trigger、Scheduler、JobDetail等)来实现Quartz进行作业调度,其实现原理是通过配置文件或者注解来定义各种bean之间的引用关系,从而编码实现Quartz的整合。但是这种方式需要书写的配置文件太多,并且需要添加新的作业进行调度时的可扩展性太差...原创 2020-05-08 20:33:05 · 341 阅读 · 0 评论 -
作业调度Quartz简介与案例
最近在做一个值班机器人,每个工作日早上10点在群里提醒对应的人当天是他On Call,类似这样的定时任务可以有很多实现方式,本人选择最经典的Quartz进行实现,由此向大家介绍一下Quartz是什么东西。Quartz简介简介: 根据Quartz官网介绍,Quartz是一个开源免费的Apache项目,是一个功能丰富的开源作业调度,可以集成到任何Java应用程序中,从最小的独立应用程序到最大的电子...原创 2020-05-01 01:18:55 · 407 阅读 · 0 评论 -
Springboot项目中遇到的NullPointException
NullPointException原创 2019-12-29 19:17:31 · 2455 阅读 · 0 评论 -
finally里面的代码一定会执行吗?
情况一:在try和catch块分别加入System.exit(0);finally是不会执行的。(注意:一定是try块和catch块分别加上System.exit(0);少一个都不行,否则finally仍然会被执行)为什么System.exit()有这么强大的力量呢,让我们看一下API中的说明:exit(int status): Terminates the currently running...原创 2018-10-09 12:41:14 · 4835 阅读 · 1 评论 -
java类加载过程
根据冯.诺依曼定义的计算机模型,任何程序都需要加载到内存才能被CPU执行,同样的java中的.class文件也需要加载到内存才能实例化类。ClassLoader负责加载.calss文件到内存中,加载类时使用的是双亲委派模型,接下来进行详细的介绍类加载过程类加载是一个将.class字节码文件实例化成Class对象并进行相关初始化的过程。java的类加载是一个运行时核心基础模块,主要是在启动之初...原创 2019-01-27 11:55:36 · 1872 阅读 · 1 评论 -
JVM之垃圾收集算法
在C++中垃圾回收是需要程序员显示地进行收集,在java语言中是由JVM进行负责垃圾收集的,以下介绍几种垃圾收集算法的思想。标记-清除算法标记-清除是最基础的算法,就如其名字一样,分为“标记”、“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。其主要的缺点有两个,一个是效率问题,标记和清除两个过程的效率都不高,另一个是空间问题,在标记清除完成后,会产生大量...原创 2019-03-04 17:06:58 · 1791 阅读 · 0 评论 -
String基础错误总结
在写Struts2的demo时遇到的问题,在service中登录时判断用户密码是否正确,采用user1.getPassword()==user.getPassword()比较时始终错误, 就算数据库密码和前台页面的密码一样也无法登录,最后测试为user.setPassword(” “)的字符串是采用的一个字符串对象进行赋值,从而得到的答案一直是false。//判断是否存在该用户 ...原创 2018-09-09 13:58:16 · 2020 阅读 · 0 评论 -
Java虚拟机运行时数据区简介
程序计数器Java虚拟机栈本地方法栈Java堆方法区运行时常量池直接内存原创 2019-03-24 21:12:44 · 1051 阅读 · 0 评论 -
创建格式化字符串
输出格式化数字可以使用printf()和format()方法 PrintStream类的format()方法一个printStream对象, String类使用静态方法format()返回一个String对象而不是printStream对象。 String类的静态方法format()能用来创建可复用的格式化字符串,而不仅仅是用于一次打印输出。 如下所示: 结果如下所示:浮点型...原创 2018-09-12 10:44:04 · 2135 阅读 · 0 评论