Getting Number of Columns
Consider a situation where there is a need to know about the number of columns in the table without touching our database. As we are the programmers so why we should worry about the database. We want to do the manipulation by sitting on our computer through our program without going into the database.
In this example we are going to exactly the same as we said above. To make this possible we need to make a class named ServletGettingNoOfColumns, the name of the program should be such that if in future there is any need to make any change in the program, you can easily understand in which program you have to make a change. As we know that in Servlet the main logic of the program is written inside the service method and in turn the service method calls the doGet() method. Now inside the doGet() method use the getWriter() method of the response object and its returns the PrintWriter object, which helps us to write on the browser. To get the number of columns from the database table there is a need for the connection between the database and the java program. After the establishment of the connection with the database, pass a query for retrieving all the records from the database and this will return the PreparedStatement object. To get the number of columns from the database we firstly need a reference of ResultSetMetaData object and we will get it only when if we have the ResultSet object with us. To get the object of the ResultSet we will call the method executeQuery() of the PreparedStatement interface. Now we have the object of the ResultSet. By the help of the ResultSet we can get the object of ResultSetMetaData. We will get it by calling the method getMetaData() of the ResultSet interface. The number of columns in the databasd table will be retrieved by the method getColumnsCount() of the ResultSetMetaData interface. This method will return the integer type of value. The number of columns will be displayed on the browser by the PrintWriter object.
The code of the program is given below:
import java.io.*;
|
web.xml file for this program:
<?xml version="1.0" encoding="ISO-8859-1"?>
|
Table emp_details in the database:
mysql> select * from
emp_details; +--------+----------+---------+-----------+----------+--------+---------+------- --+ | userId | Name | surname | address1 | address2 | town | country | zipcod e | +--------+----------+---------+-----------+----------+--------+---------+------- --+ | 86372 | Zulfiqar | Ahmed | Moradabad | Rohini | Rohini | Delhi | 110025 | +--------+----------+---------+-----------+----------+--------+---------+------- |
The output of the program is given below: