Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6635971
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T23:07:30+00:00 2026-05-25T23:07:30+00:00

After ResultSet rs = stmt.executeQuery(query); , the code does not execute. Thus, the variables

  • 0

After ResultSet rs = stmt.executeQuery(query); , the code does not execute. Thus, the variables do not get the values from the result set . Can anybody help me resolve this ?

public User storeTempDetails(String s1){ 
Statement stmt = null;
String query = "select username, account_no,name from accounts where username = ?";
try {
  connection = DriverManager.getConnection(DBurl, DBusername, DBpassword);
  System.out.println("Database connected!");
  stmt = connection.createStatement();
  ResultSet rs = stmt.executeQuery(query);
  System.out.println("this line is not printed");
  while (rs.next()) {
    userName = rs.getString("username");
    accountNo = rs.getString("account_no");
    name = rs.getString("name");System.out.println("ss"+accountNo);
  }
} catch (SQLException e ) {
  throw new RuntimeException("Cannot connect the database!", e);
} finally {
   User userObj=new User(userName,accountNo,name);
        System.out.println("Closing the connection.");
        if (connection != null) try { connection.close(); }
        catch (SQLException ignore) {}
        return userObj;
}

}

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T23:07:31+00:00Added an answer on May 25, 2026 at 11:07 pm

    Start with something like this. These are utility classes that will make your life easier when you’re starting off with JDBC:

    package persistence;
    
    import java.sql.*;
    import java.util.*;
    
    /**
     * util.DatabaseUtils
     * User: Michael
     * Date: Aug 17, 2010
     * Time: 7:58:02 PM
     */
    public class DatabaseUtils
    {
        private static final String DEFAULT_DRIVER = "oracle.jdbc.driver.OracleDriver";
        private static final String DEFAULT_URL = "jdbc:oracle:thin:@host:1521:database";
        private static final String DEFAULT_USERNAME = "username";
        private static final String DEFAULT_PASSWORD = "password";
    /*
        private static final String DEFAULT_DRIVER = "org.postgresql.Driver";
        private static final String DEFAULT_URL = "jdbc:postgresql://localhost:5432/party";
        private static final String DEFAULT_USERNAME = "pgsuper";
        private static final String DEFAULT_PASSWORD = "pgsuper";
    */
    /*
        private static final String DEFAULT_DRIVER = "com.mysql.jdbc.Driver";
        private static final String DEFAULT_URL = "jdbc:mysql://localhost:3306/party";
        private static final String DEFAULT_USERNAME = "party";
        private static final String DEFAULT_PASSWORD = "party";
    */
    
        public static void main(String[] args)
        {
            long begTime = System.currentTimeMillis();
    
            String driver = ((args.length > 0) ? args[0] : DEFAULT_DRIVER);
            String url = ((args.length > 1) ? args[1] : DEFAULT_URL);
            String username = ((args.length > 2) ? args[2] : DEFAULT_USERNAME);
            String password = ((args.length > 3) ? args[3] : DEFAULT_PASSWORD);
    
            Connection connection = null;
    
            try
            {
                connection = createConnection(driver, url, username, password);
                DatabaseMetaData meta = connection.getMetaData();
                System.out.println(meta.getDatabaseProductName());
                System.out.println(meta.getDatabaseProductVersion());
    
                String sqlQuery = "SELECT PERSON_ID, FIRST_NAME, LAST_NAME FROM PERSON ORDER BY LAST_NAME";
                System.out.println("before insert: " + query(connection, sqlQuery, Collections.EMPTY_LIST));
    
                connection.setAutoCommit(false);
                String sqlUpdate = "INSERT INTO PERSON(FIRST_NAME, LAST_NAME) VALUES(?,?)";
                List parameters = Arrays.asList( "Foo", "Bar" );
                int numRowsUpdated = update(connection, sqlUpdate, parameters);
                connection.commit();
    
                System.out.println("# rows inserted: " + numRowsUpdated);
                System.out.println("after insert: " + query(connection, sqlQuery, Collections.EMPTY_LIST));
            }
            catch (Exception e)
            {
                rollback(connection);
                e.printStackTrace();
            }
            finally
            {
                close(connection);
                long endTime = System.currentTimeMillis();
                System.out.println("wall time: " + (endTime - begTime) + " ms");
            }
        }
    
        public static Connection createConnection(String driver, String url, String username, String password) throws ClassNotFoundException, SQLException
        {
            Class.forName(driver);
    
            if ((username == null) || (password == null) || (username.trim().length() == 0) || (password.trim().length() == 0))
            {
                return DriverManager.getConnection(url);
            }
            else
            {
                return DriverManager.getConnection(url, username, password);
            }
        }
    
        public static void close(Connection connection)
        {
            try
            {
                if (connection != null)
                {
                    connection.close();
                }
            }
            catch (SQLException e)
            {
                e.printStackTrace();
            }
        }
    
    
        public static void close(Statement st)
        {
            try
            {
                if (st != null)
                {
                    st.close();
                }
            }
            catch (SQLException e)
            {
                e.printStackTrace();
            }
        }
    
        public static void close(ResultSet rs)
        {
            try
            {
                if (rs != null)
                {
                    rs.close();
                }
            }
            catch (SQLException e)
            {
                e.printStackTrace();
            }
        }
    
        public static void rollback(Connection connection)
        {
            try
            {
                if (connection != null)
                {
                    connection.rollback();
                }
            }
            catch (SQLException e)
            {
                e.printStackTrace();
            }
        }
    
        public static List<Map<String, Object>> map(ResultSet rs) throws SQLException
        {
            List<Map<String, Object>> results = new ArrayList<Map<String, Object>>();
    
            try
            {
                if (rs != null)
                {
                    ResultSetMetaData meta = rs.getMetaData();
                    int numColumns = meta.getColumnCount();
                    while (rs.next())
                    {
                        Map<String, Object> row = new HashMap<String, Object>();
                        for (int i = 1; i <= numColumns; ++i)
                        {
                            String name = meta.getColumnName(i);
                            Object value = rs.getObject(i);
                            row.put(name, value);
                        }
                        results.add(row);
                    }
                }
            }
            finally
            {
                close(rs);
            }
    
            return results;
        }
    
        public static List<Map<String, Object>> query(Connection connection, String sql, List<Object> parameters) throws SQLException
        {
            List<Map<String, Object>> results = null;
    
            PreparedStatement ps = null;
            ResultSet rs = null;
    
            try
            {
                ps = connection.prepareStatement(sql);
    
                int i = 0;
                for (Object parameter : parameters)
                {
                    ps.setObject(++i, parameter);
                }
    
                rs = ps.executeQuery();
                results = map(rs);
            }
            finally
            {
                close(rs);
                close(ps);
            }
    
            return results;
        }
    
        public static int update(Connection connection, String sql, List<Object> parameters) throws SQLException
        {
            int numRowsUpdated = 0;
    
            PreparedStatement ps = null;
    
            try
            {
                ps = connection.prepareStatement(sql);
    
                int i = 0;
                for (Object parameter : parameters)
                {
                    ps.setObject(++i, parameter);
                }
    
                numRowsUpdated = ps.executeUpdate();
            }
            finally
            {
                close(ps);
            }
    
            return numRowsUpdated;
        }
    }
    

    Given those utilities, here’s how I might write it. I’d probably put User in a model package, and UserDaoImpl would be a public class in its own .java file. I’m just being lazy:

    package persistence;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /**
     * UserDao
     * @author Michael
     * @since 10/2/11
     */
    public interface UserDao
    {
        User find(String username);
    }
    
    class UserDaoImpl implements UserDao {
    
        public static final String SELECT_USER_BY_USERNAME = "select username, account_no,name from accounts where username = ?";
    
        private Connection connection;
    
        UserDaoImpl(Connection connection)
        {
            this.connection = connection;
        }
    
        public User find(String username)
        {
            User user = null;
            PreparedStatement ps = null;
            ResultSet rs = null;
    
            try
            {
                ps = this.connection.prepareStatement(SELECT_USER_BY_USERNAME);
                ps.setString(1, username);
                rs = ps.executeQuery();
                while (rs.next()) {
                    String account = rs.getString("account_no");
                    String name = rs.getString("name");
                    user = new User(name, username, account);
                }
            }
            catch (SQLException e)
            {
                e.printStackTrace(); 
            }
            finally
            {
                DatabaseUtils.close(rs);
                DatabaseUtils.close(ps);
            }
    
            return user;
        }
    }
    
    class User {
        private final String name;
        private final String username;
        private final String account;
    
        User(String name, String username, String account)
        {
            this.name = name;
            this.username = username;
            this.account = account;
        }
    
        public String getName()
        {
            return name;
        }
    
        public String getUsername()
        {
            return username;
        }
    
        public String getAccount()
        {
            return account;
        }
    
        @Override
        public String toString()
        {
            final StringBuilder sb = new StringBuilder();
            sb.append("User");
            sb.append("{name='").append(name).append('\'');
            sb.append(", username='").append(username).append('\'');
            sb.append(", account='").append(account).append('\'');
            sb.append('}');
            return sb.toString();
        }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

updating mysql connector from v3 to v5 caused Operation not allowed after ResultSet closed
Let's say I have following code cursor = connection.cursor() cursor.execute(query) after that point I
In Java, after executing a query say I got a result set like: bat
try{ String query= select user_name from user; ResultSet rs = queries.performQuery(query); while(rs.next()){ System.out.println(User Name
When querying using mysqli_stmt::prepare() and execute() , it will not return the result set.
I am getting ResultSet after an Oracle query. when I iterating through the ResultSet
I am unsure whether a statement and resultset should be closed after each query
After some code review I removed unnecessary properties which resulted in empty rules. So
After loosing much sleep I still cannot figure this out: The code below (its
I have written a code for downloading a file(blob in database table).I get a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.