Java调用JDBC 连接Oracle 连接后 直接断开程序 连接池是否释放?

//数据库连接地址
private String url="jdbc:oracle:thin:@127.0.0.1:数据库";
//用户名
private String username= "123";
//密码
private String password ="123";
//驱动名称
private String jdbcName = "oracle.jdbc.driver.OracleDriver";

    /*数据库连接*/
 public  Connection getCon(){
    try {
        Class.forName(jdbcName);
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
    Connection con = null;
    try {
        con = DriverManager.getConnection(url,username,password);
    } catch (SQLException e) {
        e.printStackTrace();
    }
    return con;
}

/*关闭数据库连接*/
    public  void closeCon(Connection con) throws SQLException {
        if (con != null)
            con.close();
    }

如果在getCon()时连接成功后,突然终止程序,未调用closeCon(con)此时 数据库连接池是否会释放?

个人理解是会的,因为获取这个连接的应用终止了,这个对 Oracle 来说一个连接会在 processlist 中体现,这个应用终止了,连接进程也就没有了。

会释放的,突然中断等同于主动关闭服务。连接池会默认释放,这个机制应该Oracle连接池的默认配置。