From dbd60a544cfee1224dd0c4530f00736197bad7fe Mon Sep 17 00:00:00 2001 From: MaxKey Date: Sat, 6 Aug 2022 11:00:08 +0800 Subject: [PATCH] clear session id is null --- .../org/maxkey/authn/session/SessionManagerFactory.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/SessionManagerFactory.java b/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/SessionManagerFactory.java index 62310fa55..95cc0db6f 100644 --- a/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/SessionManagerFactory.java +++ b/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/session/SessionManagerFactory.java @@ -55,6 +55,9 @@ public class SessionManagerFactory implements SessionManager{ private static final String HISTORY_LOGOUT_UPDATE_STATEMENT = "update mxk_history_login set logouttime = ? ,sessionstatus = 7 where sessionid = ?"; + private static final String NO_SESSION_UPDATE_STATEMENT = + "update mxk_history_login set sessionstatus = 7 where sessionstatus = 1 and (sessionid is null or sessionid = '')"; + private JdbcTemplate jdbcTemplate; private InMemorySessionManager inMemorySessionManager; @@ -132,6 +135,9 @@ public class SessionManagerFactory implements SessionManager{ } public List querySessions() { + //clear session id is null + jdbcTemplate.execute(NO_SESSION_UPDATE_STATEMENT); + //query on line session List listSessions = jdbcTemplate.query( DEFAULT_DEFAULT_SELECT_STATEMENT, new OnlineTicketRowMapper());