diff --git a/src/main/java/com/casic/accessControl/user/manager/UserManager.java b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
index 1f61647..704a5de 100644
--- a/src/main/java/com/casic/accessControl/user/manager/UserManager.java
+++ b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
@@ -19,6 +19,7 @@
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpSession;
+import java.net.SocketException;
import java.util.List;
/**
@@ -46,6 +47,28 @@
}
/**
+ * 多次重试机制,保证mysql空闲释放的连接不报异常
+ * @param user
+ * @return
+ * @throws Exception
+ */
+ public User tryLogin(User user) throws Exception{
+ User result = null;
+ boolean flag = false;
+ for(int i =0;i<5&&!flag;i++){//如果失败则重试,最多重试5次
+ try{
+ flag = true;
+ result = login(user);
+ }catch (SocketException ex){
+ flag = false;
+ }
+ }
+ if(!flag) result = null;
+ return result;
+
+ }
+
+ /**
* 以分页方式获取用户列表
*
* @param params json格式的请求参数
diff --git a/src/main/java/com/casic/accessControl/user/manager/UserManager.java b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
index 1f61647..704a5de 100644
--- a/src/main/java/com/casic/accessControl/user/manager/UserManager.java
+++ b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
@@ -19,6 +19,7 @@
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpSession;
+import java.net.SocketException;
import java.util.List;
/**
@@ -46,6 +47,28 @@
}
/**
+ * 多次重试机制,保证mysql空闲释放的连接不报异常
+ * @param user
+ * @return
+ * @throws Exception
+ */
+ public User tryLogin(User user) throws Exception{
+ User result = null;
+ boolean flag = false;
+ for(int i =0;i<5&&!flag;i++){//如果失败则重试,最多重试5次
+ try{
+ flag = true;
+ result = login(user);
+ }catch (SocketException ex){
+ flag = false;
+ }
+ }
+ if(!flag) result = null;
+ return result;
+
+ }
+
+ /**
* 以分页方式获取用户列表
*
* @param params json格式的请求参数
diff --git a/src/main/java/com/casic/accessControl/user/web/UserController.java b/src/main/java/com/casic/accessControl/user/web/UserController.java
index 99a7ddd..feab678 100644
--- a/src/main/java/com/casic/accessControl/user/web/UserController.java
+++ b/src/main/java/com/casic/accessControl/user/web/UserController.java
@@ -24,6 +24,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
+import java.net.SocketException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -48,6 +49,7 @@
User user = null;
try{
user = userManager.login(userInfo);
+// user = userManager.tryLogin(userInfo);
}catch(Exception e){
result.put("success", false);
return result;
diff --git a/src/main/java/com/casic/accessControl/user/manager/UserManager.java b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
index 1f61647..704a5de 100644
--- a/src/main/java/com/casic/accessControl/user/manager/UserManager.java
+++ b/src/main/java/com/casic/accessControl/user/manager/UserManager.java
@@ -19,6 +19,7 @@
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpSession;
+import java.net.SocketException;
import java.util.List;
/**
@@ -46,6 +47,28 @@
}
/**
+ * 多次重试机制,保证mysql空闲释放的连接不报异常
+ * @param user
+ * @return
+ * @throws Exception
+ */
+ public User tryLogin(User user) throws Exception{
+ User result = null;
+ boolean flag = false;
+ for(int i =0;i<5&&!flag;i++){//如果失败则重试,最多重试5次
+ try{
+ flag = true;
+ result = login(user);
+ }catch (SocketException ex){
+ flag = false;
+ }
+ }
+ if(!flag) result = null;
+ return result;
+
+ }
+
+ /**
* 以分页方式获取用户列表
*
* @param params json格式的请求参数
diff --git a/src/main/java/com/casic/accessControl/user/web/UserController.java b/src/main/java/com/casic/accessControl/user/web/UserController.java
index 99a7ddd..feab678 100644
--- a/src/main/java/com/casic/accessControl/user/web/UserController.java
+++ b/src/main/java/com/casic/accessControl/user/web/UserController.java
@@ -24,6 +24,7 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
+import java.net.SocketException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -48,6 +49,7 @@
User user = null;
try{
user = userManager.login(userInfo);
+// user = userManager.tryLogin(userInfo);
}catch(Exception e){
result.put("success", false);
return result;
diff --git a/src/main/resources/spring/applicationContext-hibernate.xml b/src/main/resources/spring/applicationContext-hibernate.xml
index b5fb133..3f4a2a8 100644
--- a/src/main/resources/spring/applicationContext-hibernate.xml
+++ b/src/main/resources/spring/applicationContext-hibernate.xml
@@ -34,6 +34,9 @@
+
+
+