Когда я пытаюсь закрыть соединение MySQL, моя страница отображается пустой. Я помещаю закрытие соединения в правильном месте? Пользователь входит в систему (что работает), но затем возникает ошибка при закрытии соединения MySQL в userprofile.jsp. Я думаю, что это связано с закрытием соединения, поскольку оно работает без него
Класс входа в систему, который перенаправляет на страницу профиля пользователя
try (PrintWriter out = response.getWriter()) {
String name = request.getParameter("name");
String pass = request.getParameter("pass");
MyDb1 db = new MyDb1();
Connection con = db.getCon();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select uid,name,pass from lauraccc_fyp.register where email = '"+name+"' and pass = '"+pass+"'");
while ((rs.next())) {
String uid = rs.getString("uid");
HttpSession session=request.getSession();
session.setAttribute("name",uid);
RequestDispatcher dispatcher = request.getRequestDispatcher("/userprofile.jsp");
dispatcher.forward(request, response);
return;
} catch (SQLException ex) {
}
</head>
<body>
<div class="fh5co-loader"></div>
<%
try {
String session_id =null;
HttpSession session1=request.getSession(false);
if(session1!=null) {
session_id=(String)session1.getAttribute("name");
}
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/lauraccc_fyp", "lauraccc", "*");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from register where uid='"+session_id+"'");
rs.next();
String name = rs.getString("name");
con.close();
}catch(Exception e) {
out.println(e);
}
<h1>Welcome back <%out.print(name);%></h1>
%>