Java 关闭jdbc中的数据库连接

Java 关闭jdbc中的数据库连接,java,jsp,jdbc,Java,Jsp,Jdbc,我需要在以下代码中关闭连接的帮助。我尝试过在不同的位置进行其他关闭,但无法正确关闭。它抛出异常或显示“变量不可访问”错误。此块将在页面加载时执行 <%! public class Actor { String URL = "jdbc:mysql://mll-pbbvew1:3307/sakila"; String USERNAME = "root"; String PA

我需要在以下代码中关闭连接的帮助。我尝试过在不同的位置进行其他关闭,但无法正确关闭。它抛出异常或显示“变量不可访问”错误。此块将在页面加载时执行

<%!
            public class Actor {

                String URL = "jdbc:mysql://mll-pbbvew1:3307/sakila";
                String USERNAME = "root";
                String PASSWORD = "password";

                Connection connection = null;
                PreparedStatement selectActors = null;
                ResultSet resultSet = null;

                public Actor() {

                    try {

                        connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);

                        selectActors = connection.prepareStatement("SELECT * FROM sakila.test");
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                }

                public ResultSet getActors(String userid) {
                    try {
                        selectActors.setString(1, userid);
                        resultSet = selectActors.executeQuery();

                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                    return resultSet;
                }

            }


        %>

我在同一页中有另一个带有insert语句的块,该块正在正确关闭。请帮助关闭此select语句的连接

编辑1:

我在以后类似这样的地方调用结果集

<% Actor actor = new Actor();
            ResultSet actors = actor.getActors(userid);

        %>

我应该在哪里放置连接。close();以便正确关闭连接

编辑2: 我从另一个HTML页面以字符串的形式获取userid作为输入

<%
String userid=request.getParameter("userid");
%>


在这个jsp页面的最顶端

打开“校内方式”是非常糟糕的。关闭只是对坏解决方案的表面改变。生产代码中的此类主题是以完全不同的方式解决的(连接池,JNDI)。这在scriptlet中的事实让我感到不安。通常,除了
finally
块解决方案之外,您还可以在
finally
块中为实现可关闭接口的任何类释放资源,自从Java7以来,就有了try-with-resources来保证闭包。看见