java实现定时任务的三种方法(收集)

  • 普通thread

这是最常见的,创建一个thread,然后让它在while循环里一直运行着,通过sleep方法来达到定时任务的效果。这样可以快速简单的实现,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package org.sogrey.task;

public class TaskRunnable {

/**
* @param args
*/
public static void main(String[] args) {
// run in a second
final long timeInterval = 1000;
Runnable runnable = new Runnable() {
public void run() {
while (true) {
// ------- code for task to run
System.out.println("Hello !!");
// ------- ends here
try {
Thread.sleep(timeInterval);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
Thread thread = new Thread(runnable);
thread.start();
}
}

json转树状结构(收集)

后话: 现有新的实现方案,基于java8 Stream ,不妨看下?

使用java8中Stream轻松遍历树形结构

一切都源于项目需求。近期web项目中需要这样的功能:将json数据转为树级结构,json的数据结构如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

[
{
"id": "1",
"pId": "0",
"value": "水电站项目"
},
{
"id": "2",
"pId": "1",
"value": "项目一标段"
},
{
"id": "3",
"pId": "1",
"value": "项目二标段"
}
]

Hexo建站过程中遇到的问题(填坑篇)

在此收集Hexo建站过程中遇到的问题(填坑)

1 执行 hexo dERROR Deployer not found: git

解决方法: 执行 npm install hexo-deployer-git --save

2 local search 失效(换电脑后)

更换电脑后,源文件打包拷过来,却发现本地搜索失效:

解决方法: 重新安装 search 插件 github

执行 npm install hexo-generator-search --save

重新编译发布正常:

会持续更新…

web app相关整理

Webapp说白了就是一个针对Iphone、Android优化后的web站点,它使用的技术无非就是HTML或HTML5、CSS3、JavaScript,服务端技术JAVA、PHP、ASP。

WebApp与Native App有何区别呢?

Native App:

  1. 开发成本非常大。一般使用的开发语言为JAVA、C++、Objective-C。
  2. 更新体验较差、同时也比较麻烦。每一次发布新的版本,都需要做版本打包,且需要用户手动更新(有些应用程序即使不需要用户手动更新,但是也需要有一个恶心的提示)。
  3. 非常酷。因为native app可以调用IOS中的UI控件以UI方法,它可以实现WebApp无法实现的一些非常酷的交互效果。
  4. Native app是被Apple认可的。Native app可以被Apple认可为一款可信任的独立软件,可以放在Apple Stroe出售,但是Web app却不行。

Web App:

  1. 开发成本较低。使用web开发技术就可以轻松的完成web app的开发。

  2. 升级较简单。升级不需要通知用户,在服务端更新文件即可,用户完全没有感觉。

  3. 维护比较轻松。和一般的web一样,维护比较简单,它其实就是一个站点。

本站总访问量 | 本文总阅读量