_________ in connection pools helps to identify and replace connections that are no longer viable.

  • Expiration
  • Monitoring
  • Replacement
  • Validation
Validation in connection pools helps to identify and replace connections that are no longer viable or have become stale.

During peak usage, a web application's response time degrades significantly. Which connection pool setting should be investigated?

  • Connection Timeout
  • Max Connections Per Partition
  • Min Pool Size
  • Partition Count
To address degraded response time during peak usage, investigate the Max Connections Per Partition setting, which controls the maximum number of connections allowed in each partition.

In a high-load scenario, a web application is unable to obtain database connections quickly. What aspect of connection pooling should be optimized?

  • Acquire Increment
  • Idle Timeout
  • Max Idle Time
  • Min Pool Size
To optimize obtaining database connections in a high-load scenario, focus on the Acquire Increment setting, which determines how many connections are added to the pool when all connections are in use.

How do you set a parameter in a PreparedStatement?

  • Using the set() method.
  • Using the setInt() method.
  • Using the setParameter() method.
  • Using the setParameter(int index, Object value) method.
Parameters in a PreparedStatement are set using specific methods like setInt(), setString(), etc., depending on the data type of the parameter.

What is a CallableStatement used for in JDBC?

  • Executing DDL statements.
  • Executing batch updates.
  • Executing dynamic SQL queries.
  • Executing stored procedures.
CallableStatement is used in JDBC for executing stored procedures in the database, providing a way to call database stored procedures from Java code.

How does PreparedStatement help in preventing SQL injection attacks?

  • It automatically escapes special characters in the SQL query.
  • It encrypts the entire SQL query.
  • It relies on client-side validation.
  • It uses parameterized queries.
PreparedStatement helps prevent SQL injection attacks by using parameterized queries, ensuring that user input is treated as data and not executable code.

What method is used to execute a stored procedure using a CallableStatement?

  • callProcedure()
  • execute()
  • executeProcedure()
  • executeQuery()
The execute() method is used to execute a stored procedure using a CallableStatement.

How can you retrieve the output of a stored procedure using CallableStatement?

  • getOutput()
  • getOutputParameterValue()
  • getProcedureOutput()
  • getResultSet()
You can retrieve the output of a stored procedure using getOutputParameterValue() method in CallableStatement, which returns the value of a designated OUT parameter after the stored procedure execution.

What is the impact on performance when using PreparedStatement for repeated database operations?

  • Decreased performance due to compilation
  • Improved security with parameterized queries
  • Increased performance due to query caching
  • No impact on performance
Using PreparedStatement can lead to increased performance as the query is precompiled and cached, reducing database load and improving execution speed.

How do you handle transaction management when using PreparedStatement and CallableStatement?

  • Explicitly commit transactions using commit()
  • Rollback transactions using rollback()
  • Transactions are automatically managed
  • Use Connection.setAutoCommit(false)
To handle transactions with PreparedStatement and CallableStatement, set auto-commit to false using Connection.setAutoCommit(false) and then explicitly commit or rollback transactions using commit() and rollback() methods, respectively.