[LØST] JSP website - udregning af dato problemer
Hej gruppe
Jeg er ved at programmere mig en lille VPN server - der skal overvåge nogle tjenester.
Da vi logger en masse data fra skibe mm - er det vigtigt at tiden er korrekt - Vi logger alt I UTC
Hele mit site er grundlæggende programmeret i JSP/html - Med en MySQL Database til.
I baggrunden har jeg så nogle scripts til at køre - bla at pinge forskellige hosts ud fra IP adresse.
hvis der er svar fra Ping er maskinen online - Hvis ikke er den offline. Jeg skriver tidspunktet for ændring imellem offline/online. Dette indsættes i en tabel - med det locale tidstempel indsat - i følgende format: 2018-11-01 08:05:12
Jeg har fået det hele til at spille omkring Online/offline - Men jeg ville gerne have en lille mellemtid.
Dvs jeg har en request til min database - hvor jeg får denne tid tilbage - Hvordan kan jeg få tjekket at dette tidstempel er skrevet for under 24timer siden!
Jeg får en variabel fra min request - kaldet o_time som er dette tidstempel.
Det er dette tidstempel som jeg gerne vil vide er over eller under 24timer gammelt.
hvordan kan jeg lave dette i JSP
Jeg er ved at programmere mig en lille VPN server - der skal overvåge nogle tjenester.
Da vi logger en masse data fra skibe mm - er det vigtigt at tiden er korrekt - Vi logger alt I UTC
Hele mit site er grundlæggende programmeret i JSP/html - Med en MySQL Database til.
I baggrunden har jeg så nogle scripts til at køre - bla at pinge forskellige hosts ud fra IP adresse.
hvis der er svar fra Ping er maskinen online - Hvis ikke er den offline. Jeg skriver tidspunktet for ændring imellem offline/online. Dette indsættes i en tabel - med det locale tidstempel indsat - i følgende format: 2018-11-01 08:05:12
Jeg har fået det hele til at spille omkring Online/offline - Men jeg ville gerne have en lille mellemtid.
Dvs jeg har en request til min database - hvor jeg får denne tid tilbage - Hvordan kan jeg få tjekket at dette tidstempel er skrevet for under 24timer siden!
Jeg får en variabel fra min request - kaldet o_time som er dette tidstempel.
Det er dette tidstempel som jeg gerne vil vide er over eller under 24timer gammelt.
hvordan kan jeg lave dette i JSP
Kommentarer6
Ok, jeg har ikke meget
Lidt mere detaljeret (hvis
Date nDate = new Date();
long nDiff = nDate.getTime();
long lastTimeDiff = o_time.getTime();
long milliSecSinceLastWrite = nDiff - lastTimeDiff;
@ejvindh
Godt nytår.
Jamen
Godt nytår.
Jamen mit reelle tidstempel er sat via et bashscript - der indsætter
DATE=`date "+%Y-%m-%d %H:%M:%S"`
Som datetime i MySQL.
Dette henter jeg via mit JSP og får den ind som "2019-01-04 14:30:01" som en variabel.
Inden jeg printer på min skærm vil jeg gerne lige tjekke om dette indsatte tidstempel er mere end 24timer gammelt - da vi har vores udtryk - Online - Disconnected - Offline (hvor Disconnected er hvis den er gået offline indenfor 24Timer)
Dette hentes via Resultset således:
String o_time= rs.getString(2);
Hvis den ikke er markeret som Online
Henter i starten følgende:
<%@ page import="java.time.*" %>
<%@ page import="java.util.Date" %>
if ( state.equals("X") )
{
online = "
status = "Online";
} else {
Date nDate = new Date();
long nDiff = nDate.getTime();
long lastTimeDiff = o_time.getTime();
long milliSecSinceLastWrite = nDiff - lastTimeDiff;
if ( milliSecSinceLastWrite <= 86400000 );
{
online = "
status = "Disconnected";
} else {
online = "
status = "Offline";
}
}
Men det giver mig følgende fejl:
cannot find symbol long lastTimeDiff = o_time.getTime(); ^ symbol: method getTime() location: variable o_time of type String 1 error
Og mit bud er fordi den via et resultset henter en String... - Men har bare prøvet at konvertere den men rammer samme mur igen
Ja, det er fordi din o_time
Men jeg kan se, at der også findes andre muligheder, du kan studere:
http://www.java2s.com/Code/Java/Database-SQL-JDBC/ConvertjavasqlTimesta…
£ Ejvindh -- Jamen fedt -
havde nu ellers googlet meget omkring dette - men ikke fundet denne løsning som endte med at være den rigtige
Godt at du fik det til at