Получение предупреждения «EXCEPTION STACK TRACE: ** BEGIN NESTED EXCEPTION ** ...» при закрытии соединения - PullRequest
0 голосов
/ 27 апреля 2019

Я делал простую программу соединения java-MySQL, чтобы получить результат из базы данных mysql и распечатать его.
Каждый раз, когда я закрываю соединение, появляется предупреждение «EXCEPTION STACK TRACE».
Но если я удаляю con.close () или комментирую, предупреждение не приходит.

Я использую
JDK: jdk-11.0.3
Mysql Driver: mysql-connector-java-8.0.15.jar
Затмение: eclipse-java-2019-03-R-win32-x86_64

Я пробовал этот код по этой ссылке , чтобы изменить мой код с его помощьюне работает для меня ...
Получил выше ссылку от эту ссылку ...
Обе ссылки, упомянутые ниже также ...

--- Выше ссылки---
Ссылка 1: https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-usagenotes-statements.html#connector-j-examples-execute-select
Ссылка 2: https://bugs.mysql.com/bug.php?id=93590

Мой код:

package Practice_Work;

import java.sql.*;
import java.util.*;

public class Authenticate_onePS {

    public static void main(String[] args) throws Exception {

        //Loading Driver(Not Necessary Here)
        Class.forName("com.mysql.jdbc.Driver");


        //Setting Connection with DB
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/practice_work", "root", "nlvg3412");


        //Making Prepared Statements
        PreparedStatement ps = con.prepareStatement("select * from authenticate_user where user_name = ? or user_pswd = ?");


        boolean check = true;
        boolean flag = false;

        //Entering Values
        while(check) {
            Scanner sc = new Scanner(System.in);

            if(flag) {
                System.out.println("\n************************************************************");
                System.out.println("Please, Enter your credentials again...\n");
            }

            System.out.print("Enter Username : ");
            String name = sc.next();

            System.out.print("Enter Password : ");
            String pswd = sc.next();

            ps.setString(1, name);
            ps.setString(2, pswd);


            //Making Result Set
            ResultSet rs = ps.executeQuery(); 

            String db_name = "";
            String db_pswd = "";

            while(rs.next()) {
                db_name = rs.getString("user_name");
                db_pswd = rs.getString("user_pswd");

                //System.out.println(db_name + "     " + db_pswd);
            }


        //Checking for entered credentials      
            if(name.equals(db_name) && pswd.equals(db_pswd)) {
                System.out.println("\nLOGIN Successfully\n");
                check = false;
            }
            else if(!name.equals(db_name) && pswd.equals(db_pswd)) {
                System.out.println("\nUsername INCORRECT\n");
                flag = true;
            }
            else if(name.equals(db_name) && !pswd.equals(db_pswd)) {
                System.out.println("\nPassword INCORRECT\n");
                flag = true;
            }
            else {
                System.out.println("\nINVALID Username and Password\n");
                flag = true;
            }
        }


        //Closing Connection        
        con.close();


    }

}

Я ожидаю, что результат будет "ЛОГИН успешно"или что-то из операторов печати моего кода, но фактический результат равен

LOGIN Successfully

Sat Apr 27 21:49:12 IST 2019 WARN: Caught while disconnecting...

EXCEPTION STACK TRACE:



** BEGIN NESTED EXCEPTION ** 

javax.net.ssl.SSLException
MESSAGE: closing inbound before receiving peer's close_notify

STACKTRACE:

javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:129)
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:255)
    at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:645)
    at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:624)
    at mysql.connector.java@8.0.15/com.mysql.cj.protocol.a.NativeProtocol.quit(NativeProtocol.java:1319)
    at mysql.connector.java@8.0.15/com.mysql.cj.NativeSession.quit(NativeSession.java:182)
    at mysql.connector.java@8.0.15/com.mysql.cj.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:1750)
    at mysql.connector.java@8.0.15/com.mysql.cj.jdbc.ConnectionImpl.close(ConnectionImpl.java:720)
    at Practice_Work.Authenticate_onePS.main(Authenticate_onePS.java:79)


** END NESTED EXCEPTION **
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...