① java编程:我想在一个java类里的一个for循环中加入一个睡眠,睡眠时间5分钟,该怎么编码
public static void main(String[] args) {
for(int i = 0; i < 300; i++){
try {
Thread.sleep(1000);//睡眠1秒。循环300次就是300秒也就是五分钟
System.out.println(i);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
② java实现用户在5分钟内无操作后自动清空session
session设置失效时间有以下3个方法:
1.在tomcat-->conf-->conf/web.xm中的<session-config>中设置:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
2.在项目的web.xml中定义:
<session-config>
<session-timeout>20</session-timeout>? ?
</session-config>
注:20则设置过期时间为20分钟
3.在程序中定义:
session.setMaxInactiveInterval(30*60)
纯手打,望采纳。
③ java5分钟还没跑完的线程,直接结束,拿到了哪些数据就存哪些
你的意思没有表达明确.重新组织下语言
④ java 日期型加5分钟
应该这样写
Calendar nowTime = Calendar.getInstance();
Date nowDate = (Date) nowTime.getTime();
Calendar afterTime = Calendar.getInstance();
afterTime.add(Calendar.MONTH, 5);
Date afterDate = (Date) afterTime.getTime();
我想说得是 java已经不推荐使用date类了,所以尽量用Calendar 来实现
⑤ 请问,java如何计算出当前时间后5分钟的时间,谢谢,麻烦贴下代码
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
System.out.println("当前时间:" + sdf.format(now));
方法一:
Date afterDate = new Date(now .getTime() + 300000);
System.out.println(sdf.format(afterDate ));
方法二:
Calendar nowTime = Calendar.getInstance();
nowTime.add(Calendar.MINUTE, 5);
System.out.println(sdf.format(nowTime.getTime()));
⑥ 在java中,如何实现一个循环,每5分钟循环一次,总共循环3次,我用的是struts2+jdbc
我刚帮你写一个线程的例子,你自己看看,仿照着写就行了
public class TestThread implements Runnable{
public void run(){
int i = 0;
while(i<3){
i++;
System.out.println(i);//此处处理的的逻辑
try{
Thread.sleep(5000);//设置5秒钟运行一次
}catch(Exception e){
e.printStackTrace();
}
}
}
public static void man(String []args){
TestThread tt = new TestThread();
Thread t = new Thread(tt);
t.start();
}
}
弄错了,不好意思,我弄的是线程,不知道你是要Timer的使用
⑦ 如何令java线程池中线程超过5分钟时该线程自杀
public void run() {
while (true) {
if (Thread.currentThread().isInterrupted()) {
return;
}
// do something
Thread.sleep(sleepTime);
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}
如果线程任务是这种形式,使用thread.Interrupt 的方法来打断thread, 从而结束该thread的生命周期。
⑧ java中如何比较当前值和五分钟之前的值相互比较
12345678//原理就是把字符串转化为date,然后就可以用date的before来比较大小,或者直接用getTime//()转换为数字来比较大小。至于数组的最大,最小,直接用冒泡或者其他的算法都可以.StringdateStr1="23:12:52";StringdateStr2="23:12:53";=newSimpleDateFormat("hh:mm:ss");Longdate1=simpleDateFormat.parse(dateStr1).getTime();Longdate2=simpleDateFormat.parse(dateStr2).getTime();System.out.print("themax:"+(date1>date1?dateStr1:dateStr2));
⑨ Java保存一个数组中的数据,然后设置5分钟进行定时调用更新数据库怎么实现
Timer time = new Timer(); //定义一个 Timer
//执行方法 里面需要一个类 可以定义一个伪类
//也可以 自己 定义一个类 继承TimerTask这个类
//里面必须实现 run方法
//run方法 里面就写你的 实做 方法
//schele 方法有很多重载 有很多参数我用最简单的
//给你说明 第2个参数是 说 每隔一定的时间执行一次
//相关说明可以去jdk 帮助文档里面找
time.schele(new TimerTask() {
public void run() {
int inSertValue{
try{
commection con1=con;
Statement stmt=con1.createStatement();
str="(insert ……)";
……
stmt.close();
} catch()
} } //加到这里就好了!!最好把这样方法封装起来
}
}, 1000);
⑩ 如何用java 5分钟实现一个最简单的mysql代理服务器
如何用java 5分钟实现一个最简单的mysql代理服务器
首先,准备开发工具套件,我们并不会引入过多工具包,仅仅需要:
java8
vert.x 3
如果你是用maven做为项目管理工具,请将vert.x 3引入:
1
2
3
4
5
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>3.3.2</version>
</dependency>
代码实现:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package
com.maxleap.mysqlproxy;
import
io.vertx.core.AbstractVerticle;
import
io.vertx.core.Vertx;
import
io.vertx.core.logging.Logger;
import
io.vertx.core.logging.LoggerFactory;
import
io.vertx.core.net.NetClient;
import
io.vertx.core.net.NetServer;
import
io.vertx.core.net.NetSocket;
/**
*
@author sneaky
*
@since 1.0.0
*/
public
class
MysqlProxyServer
{
private
static
final
Logger
logger
=
LoggerFactory.getLogger(MysqlProxyServer.class);
public
static
void
main(String[]
args)
{
Vertx.vertx().deployVerticle(new
MysqlProxyServerVerticle());
}
public
static
class
MysqlProxyServerVerticle
extends
AbstractVerticle
{
private
final
int
port
=
3306;
private
final
String
mysqlHost
=
"10.10.0.6";
@Override
public
void
start()
throws
Exception
{
NetServer
netServer
=
vertx.createNetServer();//创建代理服务器
NetClient
netClient
=
vertx.createNetClient();//创建连接mysql客户端
netServer.connectHandler(socket
->
netClient.connect(port,
mysqlHost,
result
->
{
//响应来自客户端的连接请求,成功之后,在建立一个与目标mysql服务器的连接
if
(result.succeeded())
{
//与目标mysql服务器成功连接连接之后,创造一个MysqlProxyConnection对象,并执行代理方法
new
MysqlProxyConnection(socket,
result.result()).proxy();