Navigation in a database table through jsp
This is detailed jsp code that shows how to navigate in database. This code shows one by one record of student from database on clicking a button labeled 'next record', so on each click of button application fetches next record from database, this is the navigation in database.
Create a database: Before run this jsp code first create a database named 'student' through the sql query given below in mysql command prompt :-
mysql> create database student; |
Then create a table named 'stu_info' in the same database through following sql query :-
create table stu_info ( ID int not null auto_increment, Name varchar(20), Address varchar(20), Phone int(15), primary key(ID) ); |
Create a new directory named "user" in the tomcat-6.0.16/webapps and WEB-INF directory in same directory. Before running this java code you need to paste a .jar file named mysql connector.jar in the Tomcat-6.0.16/webapps/user/WEB-INF/lib.
ConnectJspToMysql.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ page import="java.sql.*" %> <%@ page import="java.io.*" %> <HTML> <HEAD> <TITLE>Navigating in a Database Table </TITLE> </HEAD> <BODY bgcolor="#ffffcc"> <font size="+3" color="green"><br>Welcome in roseindia !</font> <% int current = 0; // declare a connection by using Connection interface Connection connection = null; /* Create string of connection url within specified format with machine name, port number and database name. Here machine name id localhost and database name is student. */ String connectionURL = "jdbc:mysql://localhost:3306/student"; /*declare a resultSet that works as a table resulted by execute a specified sql query. */ ResultSet rs = null; %> <FORM NAME="form1" ACTION="ConnectJspToMysql.jsp" METHOD="get"><% if (request.getParameter("hidden") != null) { current = Integer.parseInt(request.getParameter("hidden")); } // Declare statement. Statement statement = null; try { // Load JDBC driver "com.mysql.jdbc.Driver". Class.forName("com.mysql.jdbc.Driver").newInstance(); /* Create a connection by using getConnection() method that takes parameters of string type connection url, user name and password to connect to database. */ connection = DriverManager.getConnection(connectionURL, "root", "root"); /* createStatement() is used for create statement object that is used for sending sql statements to the specified database. */ statement = connection.createStatement(); // executeQuery() method execute specified sql query. rs = statement.executeQuery("select * from stu_info"); for (int i = 0; i < current; i++) { rs.next(); } if (!rs.next()) { %> <FONT size="+2" color="red"></b> <% out.println("Sorry ! found some problems with database."); } else { %> <TABLE style="background-color: #ECE5B6;" WIDTH="30%" > <TR><TH width="50%">ID</TH><TD width="50%"> <%= rs.getInt(1)%> </TD></tr> <TR><TH>Name</TH><TD> <%= rs.getString(2)%> </TD></tr> <TR><TH>City</TH><TD> <%= rs.getString(3)%> </TD></tr> <TR><TH>Phone</TH><TD> <%= rs.getInt(4)%> </TD></tr> </TR> </TABLE> <BR> <INPUT TYPE="hidden" NAME="hidden" VALUE="<%=current + 1%>"> <INPUT TYPE="submit" VALUE="next record"> </FORM> <% } } catch (Exception ex) { %> <FONT size="+3" color="red"></b> <% out.println("Unable to connect to database."); } finally { // close all the connections. rs.close(); statement.close(); connection.close(); } %> </FONT> </FORM> </body> </html> |
Save this code as a .jsp file named "ConnectJspToMysql.jsp" in the directory Tomcat-6.0.16/webapps/user/ and you can run this jsp page with following url in address bar of the browser "http://localhost:8080/user/ConnectJspToMysql.jsp"
When click on button, application control goes to database and check for the next record. If next record is found in table, show in browser else show a error message.
Error message page: